poj 1595 Prime Cuts

大一刚搞的时候敲的

 1 #include "stdio.h"
 2 #include "stdlib.h"
 3 #include "math.h"
 4 int main()
 5 {
 6     int i, j, c, prime[1000], b[1000], m, n, t, min, max;
 7     prime[0] = 1;
 8     memset(b, 0, sizeof(b));
 9     while (scanf("%d%d", &m, &n) != EOF)
10     {
11         c = 1;
12         for (i = 2; i <= m; i++)
13             if (!b[i])
14             {
15                 prime[c++] = i;
16                 for (j = i*i; j <= m; j += i)
17                     b[j] = 1;
18             }
19         t = (c) / 2;
20         printf("%d %d:", m, n);
21         if (t - n<0)
22             min = 0;
23         else
24         {
25             min = t - n;
26             if (c % 2)
27                 min++;
28         }
29         if (t + n >= c)
30             max = c;
31         else
32 
33             max = t + n;
34 
35 
36         for (j = min; j<max; j++)
37             printf(" %d", prime[j]);
38         printf("\n\n");
39     }
40     return 0;
41 }

 

posted @ 2015-03-26 18:55  UsedRose  阅读(105)  评论(0编辑  收藏  举报