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

    题解

    很简单的线性筛裸题

    就是要注意l必须大于0,r必须小于等于m

    还有要用sum优化

    代码如下:

    #include<cstdio>
    #include<iostream>
    using namespace std;
    
    int n,m,l,r,sum[10000004];
    bool a[10050000];
    
    int main()
    {
        scanf("%d%d",&m,&n);
        a[1]=1;
        for(int i=2;i*i<=n;++i)
        {
            if(a[i])continue;
            for(int j=i;i*j<=n;++j)
                a[i*j]=1;
        }
        for(int i=1;i<=n;++i)
            sum[i]=sum[i-1]+1-a[i];
        for(int i=1;i<=m;++i)
        {
            scanf("%d%d",&l,&r);
            if(l<=0||r>n){
                printf("Crossing the line
    ");
                continue;
            }
            printf("%d
    ",sum[r]-sum[l-1]);
        }
    }
  • 相关阅读:
    docker 安装 clickhouse单机版
    CockRoachDB简介
    Ubuntu18.04 LTS Cockroach集群搭建
    ClickHouse 的一些优化参数
    ClickHouse 概念整理
    OOM Killer机制
    win10系统下载地址
    Quartz.Net在C#中的使用
    JavaScript的undefined与null、NaN的区别
    Java Web基础回顾 —JSP
  • 原文地址:https://www.cnblogs.com/rir1715/p/6847735.html
Copyright © 2011-2022 走看看