博客
关于我
NYOJ 417 死神来了 鸽巢原理
阅读量:448 次
发布时间:2019-03-06

本文共 712 字,大约阅读时间需要 2 分钟。

死神来了

时间限制:
1000 ms  |  内存限制:
65535 KB
难度:
3
描述

有一天,王小子在遨游世界时,遇到了一场自然灾害。一个人孤独的在一个岛上,没有吃的没有喝的。在他饥寒交迫将要死亡时,死神来了。由于这个死神在成神之前是一个数学家,所以他有一个习惯,会和即死之人玩一个数学游戏,来决定是否将其灵魂带走。游戏规则是死神给王小子两个整数n(100<=n<=1000000),m(2<=m<=n),在1~n个数中,随机取m个数,问在这m个数中是否一定存在一个数是另一个数的倍数,是则回答“YES",否则”NO"。如果王小子回答正确,将有再活下去的机会。但是他很后悔以前没有好好学习数学,王小子知道你数学学得不错,请你救他一命。

输入
有多组测试数据,不多于10000;
每组有两个数n,m;
以文件结束符EOF为结束标志。
输出
输出"YES"或"NO"。
样例输入
100 80100 20
样例输出
YESNO
来源

思路:鸽巢原理

假如存在倍数关系,有倍数关系的当为一组。当n为偶数,最多有n/2组分组;假如是奇数,最多有n/2+1组分组,统一写为n/2+(n&1)组

将m个数分配,只有当m>n时,才会出现一个组内有两个数,且两数为倍数关系

代码:

#include
int main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF) { n=n/2+(n&1); if(m>n)printf("YES\n"); else printf("NO\n"); } return 0;}

转载地址:http://xpjyz.baihongyu.com/

你可能感兴趣的文章
MYSQL之REPLACE INTO和INSERT … ON DUPLICATE KEY UPDATE用法
查看>>
MySQL之SQL语句优化步骤
查看>>
MYSQL之union和order by分析([Err] 1221 - Incorrect usage of UNION and ORDER BY)
查看>>
Mysql之主从复制
查看>>
MySQL之函数
查看>>
mysql之分组查询GROUP BY,HAVING
查看>>
mysql之分页查询
查看>>
Mysql之备份与恢复
查看>>
mysql之子查询
查看>>
MySQL之字符串函数
查看>>
mysql之常见函数
查看>>
Mysql之性能优化--索引的使用
查看>>
mysql之旅【第一篇】
查看>>
Mysql之索引选择及优化
查看>>
mysql之联合查询UNION
查看>>
mysql之连接查询,多表连接
查看>>
mysql乐观锁总结和实践 - 青葱岁月 - ITeye博客
查看>>
mysql也能注册到eureka_SpringCloud如何向Eureka中进行注册微服务-百度经验
查看>>
mysql乱码
查看>>
Mysql事务。开启事务、脏读、不可重复读、幻读、隔离级别
查看>>