博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jzoj4744 同余
阅读量:4703 次
发布时间:2019-06-09

本文共 866 字,大约阅读时间需要 2 分钟。

线段树套分块/主席树!

我们考虑到ai,p,q比较小(<=10000),所以分类讨论

若p较大,则kp+q的数量就比较少,可以暴力枚举

若p较小,可以预处理,令g[i][j]表示膜i余j的数的个数

我们取这个界为sqrt(maxp)=100

将询问放到每个节点上,依次处理处[1,i]的答案最后ans(l,r)=ans(r)-ans(l-1)即可

#pragma GCC optimize("O3")#pragma G++ optimize("O3")#include
#include
#include
#include
using namespace std;struct dq{ int p,q,k; }; vector
w[100010];int f[10010],g[110][100],n,m,s[100010],ans[100010]; int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;++i) scanf("%d",s+i); for(int l,r,p,q,i=1;i<=m;++i){ scanf("%d%d%d%d",&l,&r,&p,&q); w[l-1].push_back((dq){p,q,i}); w[r].push_back((dq){p,q,i}); } memset(ans,-1,sizeof ans); for(int i=0,A,p,q,k;i<=n;++i){ f[s[i]]++; for(int j=1;j<=100;++j) g[j][s[i]%j]++; for(int j=0,z=w[i].size();j

转载于:https://www.cnblogs.com/Extended-Ash/p/7774348.html

你可能感兴趣的文章
tomcat 和MySQL的安装
查看>>
git常用操作
查看>>
京东SSO单点登陆实现分析
查看>>
u-boot启动第一阶段
查看>>
MySQL批量SQL插入性能优化
查看>>
定义列属性:null,default,PK,auto_increment
查看>>
用户画像展示
查看>>
C#中StreamReader读取中文出现乱码
查看>>
使用BufferedReader的时候出现的问题
查看>>
批处理文件中的路径问题
查看>>
hibernate出现No row with the given identifier exists问题
查看>>
为什么wait()和notify()属于Object类
查看>>
配置NRPE的通讯
查看>>
匹配两个空格之间的字符。。。
查看>>
CSS 文字溢出 变成省略号 ...
查看>>
Spring事务
查看>>
java编程基础(三)流程控制语句
查看>>
让数据库跑的更快的7个MySQL优化建议
查看>>
jquery 取id模糊查询
查看>>
解决在vue中,自用mask模态框出来后,下层的元素依旧可以滑动的问题
查看>>