说明
素因子都在集合{2 3 5 7}的数称为ugly number
求第n大的丑数
输入格式
读入N。N<=100000
输出格式
输出结果如题所述。
样例
输入数据 1
12
输出数据 1
15
提示
50%的数据n<=100
100%的数据 n<=100000
AC代码
#include <iostream>
#include <queue>
using namespace std;
bool pan(int a);
int main()
{
queue<int> q;
int n,i=2;
cin>>n;
while(q.size()<n)
{
if(pan(i))q.push(i);
i++;
}
cout<<q.back()<<endl;
return 0;
}
bool pan(int a)
{
int b[4]={2,3,5,7};
int i=0;
while(a!=1&&i<4)
{
if(a%b[i]==0)a/=b[i];
else i++;
}
if(a>1)return false;
else return true;
}