111009 - 12!配对

题解bybaokemeng

#include <bits/stdc++.h>
using namespace std;

int main()
{
  int N,n,num=0,f12=479001600;
  multiset<unsigned int>s;
  cin>>N;
  for(int i=1; i<=N; i++)
  {
    cin>>n;
    if(f12%n==0)  //判断n是否是12!的因数 
    {
      multiset<unsigned int> :: iterator it = s.find(f12/n);  //找n的因子 
      if(it!=s.end())   //如果it在s中 
      {
        ++num;
        s.erase(it);   //删除 
      }
      else  s.insert(n);  //插进s中 
    }
  }
  cout<<num<<endl;
  return 0;
}