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

    很简单的题目 就是先筛素数 然后前缀和统计就可以了
     1 #include<cstdio>
     2 #include<iostream>
     3 #define MAXN 1000010
     4 using namespace std;
     5 int n,m,l,r,pos;
     6 int sum[MAXN],s[MAXN];
     7 bool vis[MAXN*10];
     8 inline void read(int&x) {
     9     x=0;int f=1;char c=getchar();
    10     while(c>'9'||c<'0') {if(c=='-')f=-1; c=getchar();}
    11     while(c>='0'&&c<='9') {x=(x<<1)+(x<<3)+c-48;c=getchar();}
    12     x=x*f;
    13 }
    14 int main() {
    15     read(n);read(m);
    16     vis[1]=true;
    17     for(int i=2;i<=m;i++) {
    18         if(!vis[i]) s[++pos]=i;
    19         for(int j=1;j<=pos&&(i*s[j]<=MAXN);j++) {
    20             vis[i*s[j]]=true;
    21             if(i%s[j]==0) break;
    22         }
    23     }
    24     for(int i=1;i<=m;i++) {
    25         if(!vis[i]) sum[i]=sum[i-1]+1;
    26         else sum[i]=sum[i-1];
    27     }
    28     for(int i=1;i<=n;i++) {
    29         read(l);read(r);
    30         if(l<1||r>m) printf("Crossing the line
    ");
    31         else printf("%d
    ",sum[r]-sum[l-1]);
    32     }
    33     return 0;
    34 }
    代码


    作者:乌鸦坐飞机
    出处:http://www.cnblogs.com/whistle13326/
    新的风暴已经出现 怎么能够停止不前 穿越时空 竭尽全力 我会来到你身边 微笑面对危险 梦想成真不会遥远 鼓起勇气 坚定向前 奇迹一定会出现

     
  • 相关阅读:
    shell编程:字符串处理方式
    shell编程:变量替换
    export的用法
    docker stack利用secrets启动wordpress
    docker swarm创建swarm集群
    docker x509: certificate has expired or is not yet valid
    docker-compose的scale的用法
    字符串函数-unquote()函数
    Sass-@each
    Sass-@while
  • 原文地址:https://www.cnblogs.com/whistle13326/p/6607104.html
Copyright © 2011-2022 走看看