3476. 【NOIP2013初赛】整除
来源:互联网 发布:桌面股票小软件 编辑:程序博客网 时间:2024/06/10 19:04
Description
给出n个数a1,a2……an,求区间[L,R]中有多少个整数不能被其中任何一个数整除。
Input
第一行三个正整数,n,L,R。
第二行n个正整数a1,a2……an
Output
一个数,即区间[L,R]中有多少个整数不能被其中任何一个数整除。
Data Constraint
对于30%的数据,1<=n<=10,1<=L,R<=1000
对于100%的数据,1<=n<=18,1<=L,R<=10^9
Solution
任意一对L, R, k单独对答案的贡献为
Code
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;int n,L,R,S,P,v[20];inline int gcd(int a,int b){ for(int c;b;a=b,b=c) c=a%b; return a;}void dfs(int x,long long s,int d){ if(s>S) return; if(x==n){ P+=d*(S/s); return; } dfs(x+1,s,d); dfs(x+1,s/gcd(s,v[x])*v[x],-d);}int gAns(int K){ S=K; P=0; dfs(0,1,1); return P; }int main(){ scanf("%d%d%d",&n,&L,&R); for(int i=0;i<n;++i) scanf("%d",v+i); printf("%d\n",gAns(R)-gAns(L-1));}
阅读全文
1 0
- 3476. 【NOIP2013初赛】整除
- 【NOIP2013初赛】整除
- JZOJsenior3476.【NOIP2013初赛】整除
- 0【NOIP2013初赛】整除 1铺砖问题 2【NOIP2012初赛】新壳栈 3【NOIP2013初赛】青蛙
- NOIP2013提高组初赛
- noip2013提高组初赛(答案+选择题题目+个人分析)
- JZOJ3477. 【NOIP2013初赛】青蛙(2017.10B组)
- NOIP2013
- noip2013
- noip2013
- NOIP 提高组 初赛 四、阅读程序写结果 习题集(八)NOIP2012-NOIP2013
- NOIP 提高组 初赛 四、阅读程序写结果 习题集(八)NOIP2012-NOIP2013
- 整除
- 整除
- 整除
- 整除
- 整除
- 整除
- 欢迎使用CSDN-markdown编辑器
- UVa 147 Dollars 动态规划状态转移方程分析
- [BZOJ1042][HAOI2008]硬币购物-容斥原理
- PHP常用的函数总结
- React Native 向iOS项目中添加React Native支持
- 3476. 【NOIP2013初赛】整除
- 什么是高频交易
- 时间轮定时器-Timewheel
- 使用隐藏框使注册人不重复
- python_OS模块
- 解决java compiler level does not match the version of the installed java project facet
- (五)WPF------Window介绍
- Spring配置事务中@Transactional各个属性定义
- 忆往昔