题目描述
小明很喜欢3和5这两个数字,他将能被3或5整除的数叫做美丽数。现在给你一个整数N(1<=N<=100000),你能告诉小明第N个美丽数是多少吗?
提示 本题需要打表优化
输入
输入包含多组测试数据。每组输入一个整数N(1<=N<=100000)。
输出
对于每组输入,输出第N个美丽数。
样例输入 Copy
1
2
3
4
样例输出 Copy
3
5
6
9
代码
#include<stdio.h>
int a[210000];
void fun()
{
int i,ans;
ans = 1;
for(i = 3; ; i ++)
{
if(ans == 100000)
{
a[ans] = i;
return ;
}
if(i % 3 == 0 || i % 5 == 0)
{
a[ans] = i;
ans ++;
}
}
return ;
}
int main()
{
int n;
fun();
while(scanf("%d",&n) != EOF)
{
printf("%d\n",a[n]);
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[100001];
int n,i=1,count=0;
while(scanf("%d",&n)!=EOF)
{
while(count<100000)
{
if(i%3==0||i%5==0)
{
count++;
a[count]=i;
}
i++;
}
printf("%d\n",a[n]);
}
return 0;
}