【转】http://blog.csdn.net/zxy_snow/article/details/6007526
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <string.h>
using namespace std;
int num[220000];
int ind[100001];
int main(void)
{
int n;
memset(num,0,sizeof(num));
for(int k=1; k*3<220000; k++)
num[k*3] = 1;
for(int k=1; k*5<220000; k++)
num[k*5] = 1;
int k=1;
for(int i=1; i<220000; i++)
{
if( num[i] == 1 )
ind[k++] = i;
}
while( scanf("%d",&n)!=EOF )
{
printf("%d/n",ind[n]);
}
return 0;
}