Codeforce 515 B . Drazil and His Happy Friends
2015-08-22 21:46
120 查看
传送门:http://codeforces.com/contest/515/problem/B
题目大意:
给出一个n,m,代表男女的数量,第i天让i%n号男和i%m号女约会,如果他们其中有一个人是 开心的,那么另一个人也会变开心,问能否通过有限次约会让他们都开心。
题目分析:
直接模拟100000次,然后判断是否依旧存在不开心的人即可,因为存在循环节,懒得算循环节长度,所以直接100000了。。。反正不会超时。
题目大意:
给出一个n,m,代表男女的数量,第i天让i%n号男和i%m号女约会,如果他们其中有一个人是 开心的,那么另一个人也会变开心,问能否通过有限次约会让他们都开心。
题目分析:
直接模拟100000次,然后判断是否依旧存在不开心的人即可,因为存在循环节,懒得算循环节长度,所以直接100000了。。。反正不会超时。
[code]#include<iostream> #include <cstdio> #include <string.h> #include <algorithm> #include <math.h> using namespace std; int a[110], b[110]; int main() { #ifndef ONLINE_JUDGE freopen("1.txt", "r", stdin); #endif int n, m, i, j, x, y, boy, girl; bool flag; while(~scanf("%d%d", &n, &m)) { flag = false; memset(a, 0, sizeof(a)); memset(b, 0, sizeof(b)); cin >> x; boy = x; for (i = 0; i < x; i++) { cin >> y; a[y] = 1; } cin >> x; girl = x; for (i = 0; i < x; i++) { cin >> y; b[y] = 1; } for (i = 0; i < 100000 ; i++) { if (a[i%n] == 0 && b[i%m] == 0) { continue; } else if (a[i%n] == 1 && b[i%m] == 0) { b[i%m] = 1; girl++; } else if (a[i%n] == 0 && b[i%m] == 1) { a[i%n] = 1; boy++; } if (boy == n && girl == m) { flag = true; break; } } if (flag) { cout << "Yes\n"; } else { cout << "No\n"; } } return 0; }
相关文章推荐
- android Bitmap内存优化(一) Bitmap 详解
- iOS_17_控制开关_TabBarController_由storyboard道路
- Android Api Demos登顶之路(四十四)Launcher Shortcuts
- iOS 让tableView选中固定行
- XMPP的android获取所有联系人,创建会话,发送消息实现
- Android跨进程通信的四种方式
- 玩转微信营销的10种方法和技巧
- 图解 android studio 如何添加 jar 文件
- iOS学习笔记-Objective-C-继承和实例化、对象初始化
- iOS中对象属性的归档和解档(runtime+KVC)快捷解决方案
- Android万能适配器Adapter
- Android万能适配器Adapter-android学习之旅(74)
- Android万能适配器Adapter-android学习之旅(74)
- Android万能适配器Adapter-android学习之旅(74)
- iOS中OC:block底层实现原理
- Swift详解之六----------------枚举、结构体、类
- Android中定时
- Android Studio常见问题
- Android手势识别
- android studio 快捷键