LGP2522题解
双倍经验题。
柯以看成是P3455的扩展。
首先这个范围内是数我们柯以用类似二维前缀和的思想,看成:
\(ans(a,b,c,d)=ans(1,b,1,d)+ans(1,a-1,1,c-1)-ans(1,b,1,c-1)-ans(1,a-1,1,d)\)
然后计算每一个ans就很好算了。
问题是,怎么算?
每一个ans都是从1开始,柯以看成:
\]
然后我们开始推式子:
\]
同时除以d:
\]
又因为
\]
而$ 1*\mu=e $
所以
\]
然后就变成:
\]
换一个顺序,枚举 \(k\):
\]
这东西柯以用数论分块算。
所以只要先预处理 \(\mu\) 的前缀和,然后数论分块就行了。
Code:
#include<iostream>
const int M=5e4;
int T,a,b,c,d,e,top,mu[M+5],pri[M+5],zhi[M+5];
inline int min(const int&a,const int&b){return a<b?a:b;}
int Ask(int n,int m)//处理答案
{
int t=min(n/=e,m/=e),L,R,ans=0;
for(L=1;L<=t;L=R+1)
{
R=min(n/(n/L),m/(m/L));
ans+=(mu[R]-mu[L-1])*(n/L)*(m/L);
}
return ans;
}
signed main()
{
int i,j,x;mu[1]=zhi[1]=1;
for(i=2;i<=M;++i)//线性筛
{
if(!zhi[i])pri[++top]=i,mu[i]=-1;
for(j=1;j<=top&&(x=i*pri[j])<=M;++j)
{
zhi[x]=1;
if(i%pri[j])mu[x]=-mu[i];
else break;
}
mu[i]+=mu[i-1];//前缀和
}
for(std::cin>>T;T;--T)
{
std::cin>>a>>b>>c>>d>>e;--a;--c;
int ans=Ask(b,d)+Ask(a,c)-Ask(b,c)-Ask(a,d);
std::cout<<ans<<"\n";
}
}
LGP2522题解的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
- 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解
题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...
- 2016ACM青岛区域赛题解
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
- poj1399 hoj1037 Direct Visibility 题解 (宽搜)
http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...
- 网络流n题 题解
学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...
- CF100965C题解..
求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...
随机推荐
- Linux开机显示模式切换
修改vim /etc/inittab 默认为5-图形界面模式,改为3-多用户模式即可 # Default runlevel. The runlevels used are: # 0 - halt (D ...
- Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 解决
感谢大佬:https://blog.csdn.net/a704397849/article/details/93797529 springboot + mybatis多数据库 + druid连接池配置 ...
- 增删改查简单的sql语句
insert INSERT INTO t_stu (name,age) VALUES ('wang',12) INSERT INTO t_stu VALUES(NULL,' ...
- Ansible playbook实现apache批量部署,并对不同主机提供以各自IP地址为内容的index.html
1.基于key验证免密授权 1.1 生成kekgen # ssh-keygen Generating public/private rsa key pair. Enter file in which ...
- Solution -「WC 2022」秃子酋长
\(\mathscr{Description}\) Link. (It's empty temporarily.) 给定排列 \(\{a_n\}\),\(q\) 次询问,每次给出 \([l,r ...
- c++ Message与Folder 拷贝 析构(没有动态空间的类)
c++ Message与Folder 拷贝 析构(没有动态空间的类) 1.两个类里边分别保存一个对方的set表,当前类有拷贝或者销毁时需要更新另一个类的set表. 2.两个类都需要访问对方的priva ...
- Java线程的实现/创建方式
1.继承Thread类: Thread 类本质上是实现了 Runnable 接口的一个实例,代表一个线程的实例. 启动线程的唯一方法就是通过 Thread 类的 start()实例方法. start( ...
- 如何在 Flutter 中集成华为云函数服务
介绍 云函数是一项 Serverless 计算服务,提供 FaaS(Function as a Service)能力,可以帮助开发者大幅简化应用开发与运维相关事务,降低应用功能的实现门槛,快速构建业务 ...
- Windows禁用445端口
今天来公司有好多电脑感染了0day病毒, 写个脚本,一键执行禁用445,135-139端口.Windows7测试没有问题. reg add "HKEY_LOCAL_MACHINE\SYSTE ...
- 超强可视化图表工具:Smartbi!!
要制作出专业的可视化图表,还是需要一定的学习成本的,并且需要大量的时间.并且即使是制作出来,配色也是一大难题,对于一般人而言,通常会通过两种方式实现可视化大屏的制作: 1.写代码 大部分人可能会选择大 ...