zoukankan      html  css  js  c++  java
  • poj1595

    素数筛

    View Code
    #include <iostream>
    #include <cstdlib>
    #include <cstdio>
    #include <cstring>
    #include <cmath>
    using namespace std;
    
    #define maxn 1005
    #define maxm 1005
    
    bool is[maxn];
    int prm[maxm];
    int n, m;
    int sum[maxn];
    
    int getprm(int n)
    {
        int i, j, k = 0;
        int s, e = (int) (sqrt(0.0 + n) + 1);
        memset(is, 1, sizeof(is));
        prm[k++] = 1;
        prm[k++] = 2;
        is[0] = 0;
        for (i = 4; i < n; i += 2)
            is[i] = 0;
        for (i = 3; i < e; i += 2)
            if (is[i])
            {
                prm[k++] = i;
                for (s = i * 2, j = i * i; j < n; j += s)
                    is[j] = 0;
            }
        for (; i < n; i += 2)
            if (is[i])
                prm[k++] = i;
        return k;
    }
    
    void work(int n, int m)
    {
        int a, b;
        if (n & 1)
        {
            m--;
            a = n / 2 - m;
            b = n / 2 + m;
        }else
        {
            a = n / 2 - m;
            b = n / 2 + m - 1;
        }
        if (a < 0)
            a = 0;
        if (b >= n)
            b = n - 1;
        for (int i = a; i <= b; i++)
            printf(" %d", prm[i]);
        puts("\n");
    }
    
    int main()
    {
    //    freopen("t.txt", "r", stdin);
        getprm(1001);
        memset(sum, 0, sizeof(sum));
        for (int i = 1; i <= 1000; i++)
            if (is[i])
                sum[i] = sum[i - 1] + 1;
            else
                sum[i] = sum[i - 1];
        while (scanf("%d%d", &n, &m) != EOF)
        {
            printf("%d %d:", n, m);
            work(sum[n], m);    
        }
        return 0;
    }
  • 相关阅读:
    链接的热键属性accesskey
    链接目标属性
    HTML添加多媒体或音乐
    HTML中的图像
    DreamweaverCS6
    HTML其他基本格式说明
    HTML页面主体常用设置
    网页设计与开发的过程
    文字排版
    选择器
  • 原文地址:https://www.cnblogs.com/rainydays/p/2866642.html
Copyright © 2011-2022 走看看