hdu1216 Assistance Required

纯模拟题

View Code
#include <iostream>
using namespace std;
#define N 35000
int arr[N]={0};
int lucky[N];
void init()
{
int i,j,k,n;
n = 0;
for (i=2;i<N;i++)
{
if(0 == arr[i])
{
lucky[n++] = i;
k = i+1;
j = 0;
while(k<N)
{
if(arr[k]==0)
{
j++;
}
if(i==j)
{
j = 0;
arr[k] = 1;
}
k++;
}
}
}
}
int main()
{
int n;
init();
while (scanf("%d",&n)!=EOF&&n!=0)
{
printf("%d\n",lucky[n-1]);
}
return 0;
}
原文地址:https://www.cnblogs.com/nanke/p/2344747.html