nyoj_813对决
来源:互联网 发布:天地知我心二小说 编辑:程序博客网 时间:2024/04/27 19:21
对决
Topcoder要招进来了 n 个新同学,Yougth计划把这个n个同学分成两组,要求每组中每个人必须跟另一组中每个同学进行一次算法对决,问存不存在一种分组方式在k场完成对决。(两组中每一组中人数都要大于0)
- 输入
- 有多组测试数据,每组测试数据两个数 n 和 k ,n和k都为0时表示输入结束。(0<n<10000,0<k<1000000)
- 输出
- 输出一行,如果可以,输出YES,不行的话输出NO。
- 样例输入
4 14 34 42 13 30 0
- 样例输出
NOYESYESYESNO
#include<iostream>#include<stdio.h>using namespace std;int s( int n, int m ) { for( int i = 1; i <= n; i++ ) if( m == i * ( n - i ) ) return 1; return 0; } int main() { int n = 0; int m = 0; scanf("%d%d",&n,&m); while( n != 0 || m != 0 ) { if( s( n, m ) ) printf("YES\n"); else printf("NO\n"); scanf("%d%d",&n,&m); } return 0; }思路解析:
其实我是仔细研究了提示:4个人分成两组,1和3则需对决3场,2和2则需对决4场。
3=1*(4-1);
2=2*(4-2);
所以根据这个规律,实验一下其他项,也可以验证,所以s()函数的构造出现了,
只要s()函数返回值是1,即可输出"YES",否则,输出"NO"。。。
0 0
- nyoj_813对决
- 对决
- 对决
- 对决
- 对决
- 对决
- 对决
- 对决
- 对决
- 对决
- 对决
- 对决算法
- 经典对决!
- acm-对决
- 巅峰对决
- 813 对决
- nyoj 对决
- nyoj813对决
- Android文档笔记:通知(一)
- Android左右滑动切换背景(GestureDetector)
- Problem - 152A - Codeforces
- int 和string转换
- 第三周
- nyoj_813对决
- cocos2d-x 数据存储 Sqlite数据库
- windows下安装、卸载mysql服务
- javaweb之自定义标签库——迭代标签(foreach)(可迭代Map、List、Set、任意数组)
- 新款 洗澡时也可以使用的手机套
- redis pub/sub 聊天
- 图标不能正常显示
- iOS - 隐藏Navigation & 隐藏状态栏:
- 关于html代码的一些认识