[Luogu] P1865 A % B Problem
2024-09-06 00:59:08
题目描述
区间质数个数
输入输出格式
输入格式:
一行两个整数 询问次数n,范围m
接下来n行,每行两个整数 l,r 表示区间
输出格式:
对于每次询问输出个数 t,如l或r∉[1,m]输出 Crossing the line
题目解析
素数筛 + 前缀和,筛的过程中处理前缀和,感觉很有趣的思路。
Code
#include<iostream>
#include<cstdio>
using namespace std; const int MAXN = + ;
const int MAXM = + ; int n,m,l,r;
int a[MAXM],vis[MAXM]; inline int rd() {
int x=,f=;char ch=getchar();
while(!isdigit(ch)) {f=(ch=='-')?-:;ch=getchar();}
while(isdigit(ch)) {x=x*+ch-'';ch=getchar();}
return x*f;
} inline void find_prime() {
a[] = ;
vis[] = true;
for(int i = ;i <= m;i++) {
if(!vis[i]) {
a[i] = a[i-] + ;
for(int j = i+i;j <= m;j = j+i) vis[j]=true;
} else a[i] = a[i-];
}
return;
} int main() {
scanf("%d%d",&n,&m);
find_prime();
while(n--) {
l = rd(), r = rd();
if(l < || m < r) {
puts("Crossing the line");
continue;
}
printf("%d\n",a[r]-a[l-]);
}
return ;
}
最新文章
- SQL Server监控报警架构_如何添加报警
- linux mysql-5.6.26 安装
- 如何让同局域网的同事访问我电脑上的PHP网站和数据库
- struts2结果(Result)
- NOIP201103瑞士轮【B002】
- simplefactory简单工厂模式
- STM32 UART 重映射
- android学习日记13--数据存储之File存储
- WordPress 前端投稿/编辑插件 DJD Site Post(支持游客和已注册用户)
- JS添加删除一组文本框并对输入信息加以验证
- 网页播放音频、视频文件——基于web的html 5的音乐播放器(转载)
- Ubuntu: 搭建tftp,nfs服务器
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block
- Web前端框架与类库
- stm32 RAM分配及占有(转)
- celldb.cc
- js原生API妙用(一)
- ElasticSearch入门 第一篇:Windows下安装ElasticSearch
- JS实现页面字体繁简转换
- C++ STL--queue 的使用方法
热门文章
- UI:归档、反归档、数据持久化
- 浅谈JAVA中如何利用socket进行网络编程(二)
- 2-3 Windows下一站式开发环境anaconda搭建
- hdu4604 Deque(最长上升子序列变形)
- bzoj 5281: [Usaco2018 Open]Talent Show【dp】
- bzoj 4080: [Wf2014]Sensor Network【瞎搞+随机化】
- bzoj 4585: [Apio2016]烟火表演【左偏树】
- WebSphere中数据源连接池太小导致的连接超时错误记录
- Android 线程池系列教程(2)Thread,Runnable是基类及如何写Run方法
- Oracle函数大全下载