【2017多校】HDU6085 Rikka with Candies
来源:互联网 发布:java打印方法签名 编辑:程序博客网 时间:2024/06/04 01:18
传送门
#include<stdio.h>#include<bits/stdc++.h>#define ll long long#define pii pair<int,int>#define pll pair<ll,ll>#define MEM(a,x) memset(a,x,sizeof(a))#define lowbit(x) ((x)&-(x))using namespace std;const int N = 50000 +5;bitset<N>a,b,ans;bitset<N>bb;//b的倍数,bb[i]=1 : 有奇数个y满足 i%b[y]==0void slove(int maxK){ bb.reset(); ans.reset(); for(int i=maxK;i>=0;--i){//枚举k ans[i]=(bb&(a>>i)).count()&1;//存在多少个(a-i)%b=0 if(b[i]){//枚举b[i]倍数 for(int j=0;j<N;j+=i){ bb.flip(j); } } }}int main(){ //freopen("/home/lu/code/r.txt","r",stdin); //freopen("/home/lu/code/w.txt","w",stdout); int T; scanf("%d",&T); while(T--){ int n,m,q; scanf("%d%d%d",&n,&m,&q); a.reset(); b.reset(); int maxK=0; for(int i=0;i<n;++i){ int x; scanf("%d",&x); a.set(x); } for(int i=0;i<m;++i){ int x; scanf("%d",&x); b.set(x); maxK=max(maxK,x); } slove(maxK); while(q--){ int x; scanf("%d",&x); puts(ans[x]?"1":"0"); } } return 0;}
阅读全文
19 0
- 【2017多校】HDU6085 Rikka with Candies
- hdu6085 Rikka with Candies
- HDU6085-Rikka with Candies
- Hdu6085 Rikka with Candies(2017多校第5场)
- 2017多校训练Contest5: 1001 Rikka with Candies hdu6085
- hdu6085 Rikka with Candies [bitset+想法]
- Rikka with Candies(HDU6085) (bitset加速计数)
- Rikka with Candies
- Rikka with Candies HDU
- HDU 6085 Rikka with Candies
- HDU 6085 Rikka with Candies
- Rikka with Candies(bitset操作)
- HDU 6085 Rikka with Candies
- hdu 6085 Rikka with Candies
- Hdu 6085 Rikka with Candies【思维+Bitset】
- hdu 6085 Rikka with Candies bitset
- HDU 6085 Rikka with Candies 模拟bitset
- HDU 6085 Rikka with Candies (bitset)
- mysql IP address 'xxx' could not be resolved
- 什么是短信猫
- HDU1017(枚举)
- Java内存分析2
- android Okhttp和OkHttp3持久化cookie
- 【2017多校】HDU6085 Rikka with Candies
- 近5年133个Java面试问题列表
- ELK 之 Logstash
- poj 2107 K-th Number(主席树求区间第K大)
- 每日一题(32)—— 联合体大小
- 关于IE抛出"不能执行已释放 script 的代码"的解决方法
- 图纸转图片cad转换成jpg格式
- 深入Thread.sleep
- SpringMVC源码情操陶冶-FreeMarker之web配置