zoukankan      html  css  js  c++  java
  • P1865 A % B Problem

    题目背景

    题目名称是吸引你点进来的

    实际上该题还是很水的

    题目描述

    区间质数个数

    输入输出格式

    输入格式:

    一行两个整数 询问次数n,范围m

    接下来n行,每行两个整数 l,r 表示区间

    输出格式:

    对于每次询问输出个数 t,如l或r∉[1,m]输出 Crossing the line

    输入输出样例

    输入样例#1: 复制
    2 5
    1 3
    2 6
    输出样例#1: 复制
    2
    Crossing the line

    说明

    【数据范围和约定】

    对于20%的数据 1<=n<=10 1<=m<=10

    对于100%的数据 1<=n<=1000 1<=m<=1000000 -10^9<=l<=r<=10^9 1<=t<=1000000

    #include<bits/stdc++.h>
    using namespace std;
    int pri[1000005],m;
    void findpri()
    {
        pri[0]=0;
        pri[1]=0;
        for(int i=2;i*i<=m;i++)if(pri[i])for(int j=i*2;j<=m;j+=i)pri[j]=0;
    }
    int main()
    {
        int n,l,r;
        memset(pri,-1,sizeof(pri));
        scanf("%d%d",&n,&m);
        findpri();
        while(n--)
        {
            scanf("%d%d",&l,&r);
            if(l<1||r>m)printf("Crossing the line
    ");
            else
            {
                int k=0;
                for(int i=l;i<=r;i++)k-=pri[i];
                printf("%d
    ",k);
            }
        }
        return 0;
    }
  • 相关阅读:
    General Problem Solving Techniques [Beginner-1]~H
    做HDU1010 带出来一个小问题
    HDU1009
    hdu1007
    hdu 1008
    HDU1006
    hdu 1005
    hdu 1004
    UVA 10970 第一次比赛 D题 (后面才补的)
    LightOJ 1317 第八次比赛 A 题
  • 原文地址:https://www.cnblogs.com/sphreez/p/8633343.html
Copyright © 2011-2022 走看看