码迷,mamicode.com
首页 > 其他好文 > 详细

蚂蚁的腿

时间:2014-11-16 18:41:16      阅读:276      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   os   sp   for   数据   

描述

 

健康快乐的小蚂蚁最近从地球坐光速飞船来到了宇宙总部,可是身体发生了一点变化(医生说可能是宇宙中的奇异射线造成的)
具体来说就是蚂蚁多长了好多腿,而且每天早上起来的时候发现腿的总数还不一样,这个和它来到宇宙总部的天数有关系。
它通过统计发现第一天早上有2条腿,第二天早上有2条腿,第三天早上有3条腿,第四天早上有5条腿...
它统计了前201天的情况,惊讶的发现这每天早上的腿数目跟素数有关系,其恰好是大于等于来宇宙总部天数的最小素数。
有了这些统计资料,他想知道第N天早上它有多少腿。

bubuko.com,布布扣
 
输入
第一行一个整数 T 表示T组数据 (T <= 10000)
接下来T行,一行一个整数N (0 <= N <= 1000000)
输出
一行一个整数
样例输入
2
1
2
样例输出
2
2

 1 #include <stdio.h>   
 2 #include <string.h>
 3 #define N 1000010
 4 
 5 int flag[N];
 6 
 7 int main(){
 8     int T;
 9     int i;
10     int j;
11     int n;
12     int leg;
13     
14     memset(flag,0,sizeof(int)*N);
15     flag[0]=1;
16     flag[1]=1;
17     
18     for(i=2;i*i<N;i++){
19         if(flag[i]==0){
20             for(j=i*i;j<N;j+=i)
21                 flag[j]=1;
22         }
23     }
24     
25     scanf("%d",&T);
26     
27     while(T--){
28         scanf("%d",&n);
29         
30         if(n==0){   //一开始没有注意到n可能为0的情况,错了好多次。。。
31             printf("6\n");
32             continue;
33         }
34         
35         while(1){
36             if(flag[n]==0){
37                 leg=n;
38                 break;
39             }
40             n++;
41         }
42         printf("%d\n",leg);
43     }
44     return 0;
45 }

 

 

蚂蚁的腿

标签:style   blog   http   io   color   os   sp   for   数据   

原文地址:http://www.cnblogs.com/zqxLonely/p/4101691.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!