bzoj2880
打公式好麻烦 QAQ
为了节省时间去复习,原谅我引用一下别人的博客。。。http://blog.csdn.net/acdreamers/article/details/8542292
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<string>
#include<cstring>
#define re(i,l,r) for(int i=(l);i<=(r);i++)
#define rre(i,r,l) for(int i=(r);i>=(l);i--)
using namespace std;
typedef long long LL;
int prime[],prime_tot,mu[],g[],sum[];
bool bo[];
LL solve(int n,int m)
{
LL ret=;
if(n>m)swap(n,m);
int i=,xia;
while(i<=n)
{
xia=min(n/(n/i),m/(m/i));
ret+=1LL*(n/i)*(m/i)*(sum[xia]-sum[i-]);
i=xia+;
}
return ret;
}
int main()
{
mu[]=;
re(i,,)
{
if(!bo[i])prime[++prime_tot]=i,mu[i]=-,g[i]=;
for(int j=;j<=prime_tot&&i*prime[j]<=;j++)
{
bo[i*prime[j]]=;
if(i%prime[j]==){mu[i*prime[j]]=,g[i*prime[j]]=mu[i];break;}
else mu[i*prime[j]]=-mu[i],g[i*prime[j]]=mu[i]-g[i];
}
}
re(i,,)sum[i]=sum[i-]+g[i];
int t;
scanf("%d",&t);
while(t--)
{
int n,m;scanf("%d%d",&n,&m);
printf("%lld\n",solve(n,m));
}
return ;
}
bzoj2880的更多相关文章
随机推荐
- Openwrt配置小记
手中有台Netgear WNR2000v3,一直想尝试Openwrt,于是刷机.官方最新固件的稳定版本为15.05.1,该版本自带luci,BUT,不能保存配置,上网查了很久,得出结论,是由于WNR2 ...
- C#使用xpath简单爬取网站的内容
public static void Get() { // string xpathtrI = "//*[@id='classify-list']/dl/dd/a/cite/span/i&q ...
- [原]CentOS7安装Rancher2.1并部署kubernetes (二)---部署kubernetes
################## Rancher v2.1.7 + Kubernetes 1.13.4 ################ ##################### ...
- 线程锁Lock
from threading import Thread, Lock import time def func(): global n n -= 1 n = 10 t_list = [] for i ...
- Piggy-Bank 完全背包
来源hdu1114 Problem Description Before ACM can do anything, a budget must be prepared and the necessar ...
- python3 中 Event.wait 多线程等待
event.wait(time) 等待 time 时间后,执行下一步.或者在调用 event.set() 后立即执行下一步. event.clear() 清除信号 event.set() 设置信号 ...
- docker的安装教程
一.Docker服务安装 Docker 支持以下的 Ubuntu 版本: Ubuntu Precise 12.04 (LTS) Ubuntu Trusty 14.04 (LTS) Ubuntu Wil ...
- 剑指offer——python【第43题】左旋转字符串
题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abc ...
- 我也来----xia bi bi 一下----微信小程序
工作刚到一阶段 就看了看微信小程序 自己做了个小dome 主要是为了让我女朋友能够学习做菜! 然而悲催的发现我根本没有App ID 不说快了 直接上图 个人感觉开发起来还是很简单的. 对着AP ...
- Python3.6 性能测试框架Locust的搭建与使用
背景 Python3.6 性能测试框架Locust的搭建与使用 基础 python版本:python3.6 方法一: pip install locustio 方法二: 开发工具:pycharm 使用 ...