Mike is very lucky, as he has two beautiful numbers, 3 and 5. But he is so greedy that he wants infinite beautiful numbers. So he declares that any positive number which is dividable by 3 or 5 is beautiful number. Given you an integer N (1 <= N <= 100000), could you please tell mike the Nth beautiful number?
迈克非常幸运,因为他有两个美丽的数字,3和5.但他非常贪婪,以至于他想要无限美丽的数字。 所以他宣称任何可以被3或5除的正数都是美丽的数字。 给你一个整数N(1 <= N <= 100000),你能告诉迈克第N个美丽的数字吗?
InputThe input consists of one or more test cases. For each test case, there is a single line containing an integer N.
输入包含一个或多个测试用例。 对于每个测试用例,都有一行包含整数N.
OutputFor each test case in the input, output the result on a line by itself.
对于输入中的每个测试用例,单独输出结果。
Sample Input1
2
3
4
3
5
6
9
PS:去重很重要!
#include<stdio.h>
#include<algorithm>
#include<queue>
using namespace std;
int a[500000];
int main()
{
int n,i,j;
a[0]=0;
for(i=1;i<100000;i++)
{
a[i]=3*i;
}
for(j=1;j<100000;j++)
a[i++]=5*j;
sort(a,a+200000);
unique(a,a+200000);
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",a[n]);
}
return 0;
}