问题描述

David 有很多好朋友。有些期末季刚结束,有些人很快乐,但有些不太快乐,David 想把快乐传递给每个人,作为心理学大师,他准备了如下计划:David 的朋友中有 n 个男生m 个女生, 还有 k 个跨性别者,方便起见,将他们分别编号为 0,...,n−1 和 0,...,m−1, 0,...,k −1,在第 i 天,David会邀请编号为 (i mod n) 的男生和编号为 (i mod m) 的女生还有 (i mod k)的跨性别者共进晚餐(因为 David 同时是程序员,所以从这个计划从第 0天开始) 。共进晚餐的三个人只要至少有有一个是快乐的人,另外的人也会变得快乐起来。否则大家的状态不会改变(一旦一个人是快乐的,他就会永远快乐下去) 。现在问题来了,David 想知道他是否能通过这个计划使得所有人都快乐起来呢?

输入格式

第一行一个整数 T ≤ 20,表示该测试点数据组数

每组数据的第一行包含三个整数 n,m,k, 保证至少一类人不为空

接下来一行第一个整数为 0 ≤ b ≤ n ,表示目前快乐的男生的数量,接下来

b 个空格隔开的整数 0 ≤ x i < n,表示快乐的男生的编号。

接下来一行第一个整数为 0 ≤ g ≤ m ,表示目前快乐的女生的数量,接下

来 g 个空格隔开的整数 0 ≤ y i < m,表示快乐的女生的编号。

接下来一行第一个整数为 0 ≤ t ≤ k ,表示目前快乐的跨性别者的数量,接

下来 t 个空格隔开的整数 0 ≤ z i < t,表示快乐的跨性别者的编号。

相邻两组数据之间有一行空行

输出格式

假如最终所有人都能变的快乐起来,就输出”Yes” (不带引号),否则输出”No”.

样例输入 1

3

2 3 0

0

1 0

0

2 4 0

1 0

1 2

0

2 3 0

1 0

1 1

0

样例输出 1

Yes

No

Yes

样例解释

对于第一组数据:

第 0 天,0 号男生和 0 号女生吃饭,因为 0 号女生是快乐的,所以 0 号男

生也变得快乐了;

第 1 天,1 号男生和 1 号女生吃饭,因为他们本来就都不快乐,情况没有变

化;

第 2 天,0 号男生和 2 号女生吃饭,因为 0 号男生是快乐的,所以 2 号女

生也变得快乐了;

第 3 天,1 号男生和 0 号女生吃饭,因为 0 号女生是快乐的,所以 1 号男

生也变得快乐了;

第 4 天,0 号男生和 1 号女生吃饭,因为 0 号男生是快乐的,所以 1 号女

生也变得快乐了;

这样就全都快乐了

对于第二组数据:1 号男生,1 号女生和 3 号女生永远也没法变得快乐

数据范围及约定

对于 50% 的数据,n,m ≤ 100,k = 0

对于 70% 的数据, n,m,k ≤ 2000

另外存在 10% 的数据, n,m ≤ 1000000000, b,g ≤ 100000,k = 0

对于 100% 的数据,n,m,k ≤ 1000000000, b,g,t ≤ 100000

// 70 fen baoli
/*
QAQ 这个70的baoli调了1h...然后就看见千古神犇 axm dalao的正解都写完了QAQ,在写暴力
对拍,我好慌,偶然一撇看到了他把它们放到了一个数组里,于是我也把他们放到一个
数组里,搞了好久一直不对。。放弃之际,决定再挣扎一下,然后..就调出来了,,但
是写完第一题心态爆炸. (PS:大家可不要学我没事乱看哦QAQ)
*/
#include<iostream>
#include<cstring>
#include<cmath>
#include<cstdio>
#include<queue>
#include<algorithm>
using namespace std;
typedef long long ll;
using namespace std;
const int N=1e6+10; inline int read() {
int n=0,f=1;char ch=getchar();
while (ch<'0' || ch>'9') {if(ch=='-') f=-1;ch=getchar();}
while (ch<='9' && ch>='0') {n=(n<<3)+(n<<1)+ch-'0';ch=getchar();}
return n*f;
} inline void init() {
freopen("happy2.in","r",stdin);
freopen("happy2.out","w",stdout);
} int x[N],y[N],z[N];
int T,n,m,k,b,a,c; int main() {
init();
T=read();
while (T--) {
n=read(),m=read(),k=read();
memset(x,0,sizeof(x));
memset(y,0,sizeof(y));
memset(z,0,sizeof(z));
int aa=read();
for(int i=1;i<=aa;++i) a=read(),x[a]=1;
int ba=read();
for(int i=1;i<=ba;++i) b=read(),y[b]=1;
int ca=read();
for(int i=1;i<=ca;++i) c=read(),z[c]=1;
if(k) {
for(int i=0;i<=100000;++i)
if(y[i%m] || x[i%n] || z[i%k])
y[i%m]=x[i%n]=z[i%k]=1; } else {
for(int i=0;i<=100000;++i)
if(y[i%m] || x[i%n]) y[i%m]=x[i%n]=1;
}
int bz=1;
for(int i=0;i<n;++i)
if(!x[i]) bz=0;
for(int i=0;i<m;++i)
if(!y[i]) bz=0;
for(int i=0;i<k;++i)
if(!z[i]) bz=0;
if(bz==0) printf("No\n");
else printf("Yes\n");
}
return 0;
}

std:

#include<iostream>
#include<cstring>
#include<cmath>
#include<cstdio>
#include<queue>
#include<algorithm>
using namespace std;
typedef long long ll;
using namespace std;
const long long inf=947483648;
const int N=1e5+10; ll T,n,m,k;
ll a[N],b[N],cc[N],vis[N]; inline ll read() {
ll n=0,f=1;char ch=getchar();
while (ch<'0' || ch>'9') {if(ch=='-') f=-1;ch=getchar();}
while (ch<='9' && ch>='0') {n=(n<<3)+(n<<1)+ch-'0';ch=getchar();}
return n*f;
} inline ll gcd(ll a,ll b) {
if(b==0) return a;
else return gcd(b,a%b);
} inline void init() {
freopen("happy2.in","r",stdin);
freopen("happy2.out","w",stdout);
}
int main() {
init();
T=read();
while (T--) {
memset(vis,0,sizeof(vis));
n=read(),m=read(),k=read();
ll jc=gcd(gcd(n,m),k);
ll a1,b1,c1;
a1=read();
for(ll i=0;i<a1;++i) vis[read()%jc]=1;
b1=read();
for(ll i=0;i<b1;++i) vis[read()%jc]=1;
c1=read();
for(ll i=0;i<c1;++i) vis[read()%jc]=1;
ll c=1;
for(ll i=0;i<jc;++i)
if(!vis[i]) {
c=0; break;
}
if(!c || a1+b1+c1==0) printf("No\n");
else printf("Yes\n");
} fclose(stdin); fclose(stdout);
return 0;
}

20181107 模拟赛T1:快乐传递政治正确版的更多相关文章

  1. 【洛谷比赛】[LnOI2019]长脖子鹿省选模拟赛 T1 题解

    今天是[LnOI2019]长脖子鹿省选模拟赛的时间,小编表示考的不怎么样,改了半天也只会改第一题,那也先呈上题解吧. T1:P5248 [LnOI2019SP]快速多项式变换(FPT) 一看这题就很手 ...

  2. 20180610模拟赛T1——脱离地牢

    Description 在一个神秘的国度里,年轻的王子Paris与美丽的公主Helen在一起过着幸福的生活.他们都随身带有一块带磁性的阴阳魔法石,身居地狱的魔王Satan早就想着得到这两块石头了,只要 ...

  3. [NOIP2018校模拟赛]T1 阶乘

    题目: 描述 有n个正整数a[i],设它们乘积为p,你可以给p乘上一个正整数q,使p*q刚好为正整数m的阶乘,求m的最小值. 输入 共两行. 第一行一个正整数n. 第二行n个正整数a[i]. 输出 共 ...

  4. 5.20 省选模拟赛 T1 图 启发式合并 线段树合并 染色计数问题

    LINK:图 在说这道题之前吐槽一下今天的日子 520 = 1+1+4+514. /cy 这道题今天做的非常失败 一点分都没拿到手 关键是今天的T3 把我整个人给搞崩了. 先考虑 如果得到了这么一张图 ...

  5. 5.15 省选模拟赛 T1 点分治 FFT

    LINK:5.15 T1 对于60分的暴力 都很水 就不一一赘述了. 由于是询问所有点的这种信息 确实不太会. 想了一下 如果只是询问子树内的话 dsu on tree还是可以做的. 可以自己思考一下 ...

  6. 20161007 NOIP 模拟赛 T1 解题报告

    排序 3.1 题意描述 众所周知,熟练掌握至少一种排序算法是参加NOIP的必备技能.常见的排序算法有冒泡 排序.归并排序.快速排序.奇偶排序.猴子排序.梳排序.鸡尾酒排序.臭皮匠排序等. 在这里,介绍 ...

  7. NOIP欢乐模拟赛 T1 解题报告

    小澳的方阵 (matrix.cpp/c/pas) [题目描述] 小澳最近迷上了考古,他发现秦始皇的兵马俑布局十分有特点,热爱钻研的小澳打算在电脑上还原这个伟大的布局. 他努力钻研,发现秦始皇布置兵马俑 ...

  8. [模拟赛] T1 高级打字机

    Description 早苗入手了最新的高级打字机.最新款自然有着与以往不同的功能,那就是它具备撤销功能,厉害吧. 请为这种高级打字机设计一个程序,支持如下3种操作: 1.T x:在文章末尾打下一个小 ...

  9. 2019.2.25 模拟赛T1【集训队作业2018】小Z的礼物

    T1: [集训队作业2018]小Z的礼物 我们发现我们要求的是覆盖所有集合里的元素的期望时间. 设\(t_{i,j}\)表示第一次覆盖第i行第j列的格子的时间,我们要求的是\(max\{ALL\}\) ...

随机推荐

  1. flask异常处理:abort、errorhandler、app_errorhandler,封装全局异常处理

    目录 1. abort() 1.1 使用方式一:传递一个错误码 1.2 使用方式二:传递一个json格式字符串 1.3 使用方式三:传递一个响应体 2. errorhandler 2.1 简单使用: ...

  2. 在vps上搭建hexo博客

    最近更换了服务器,需要把自己的Hexo Next重新部署到新服务器上,本文记录一下在vps上搭建hexo博客的过程. 在vps上搭建hexo博客需要下面这些工具: Nginx: 用于博客展示 SSH: ...

  3. maven中pom的继承以及dependencies与dependencyManagement的区别

    https://blog.csdn.net/zzm3280/article/details/84952623 分类专栏: maven   本文转自:https://blog.csdn.net/liut ...

  4. mysql 5.7 修改root密码允许远程连接

    1.修改root密码(其他用户类似)  试过网上看的一些 在mysql数据库执行 update user set password='新密码'  where user='root' 执行说找不到字段, ...

  5. 服务发现框架选型: Consul、Zookeeper还是etcd ?

    背景 本文并不介绍服务发现的基本原理.除了一致性算法之外,其他并没有太多高深的算法,网上的资料很容易让大家明白上面是服务发现.想直接查看结论的同学,请直接跳到文末.目前,市面上有非常多的服务发现工具, ...

  6. Ubuntu 18.04 RTX2080(ti) + tensorflow-gpu + cuda9.0 + gcc5 兼容性问题解决

    0.下载display driver.cuda和cudnn RTX2080 Display Driver cuda cudnn 1. 禁止系统默认的显卡驱动 打开系统黑名单 sudo gedit /e ...

  7. 深圳宝安图书馆官网错误 HTTP Status 500 - Servlet.init() for servlet spring threw exception

    停留了一段时间没有动 打开https://www.balib.cn/balib/category/152 *********************************************** ...

  8. $parsers & $formatters

    一.理解 $parsers 和 $formatters Angular 是MVVM框架,model层数据变化了会通知view层更新,同样的view层更新了也会通知到model $parsers 和 $ ...

  9. Python3 解决windows里PIP下载安装速度慢

    直接保存为xxx.py运行即可 自动在用户文件夹创建pip文件夹,并创建配置文件:pip.ini 从此告别pip install XXXX 下载模块速度超级慢的问题! # -*- coding: ut ...

  10. Servlet HttpServletResponse对象、HttpServletRequest对象

    HttpServletResponse对象(response)的常用方法 setCharacterEncoding("utf-8")    //设置响应的编码字符集 setCont ...