这题我的解法,逐个把2,3,5.三个元素逐一剔除,如果结果为1那这个数就为丑陋数。当然这种方法超时了
,在自家电脑运行了快一分钟才算出来。求大神,以下是超时版本
#include"stdio.h"
#include"conio.h"
int main()
{
int pea,banana,tomato=15,apple;
scanf("%d",&banana);
for(pea=11;pea<=banana;)
{
apple=tomato;
while(apple%2==0)
{
apple=apple/2;
}
while(apple%3==0)
{
apple=apple/3;
}
while(apple%5==0)
{
apple=apple/5;
}
if(apple==1)
{
pea++;
}
tomato++;
}
printf("%d",tomato-1);
getch();
}