国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 互联网 > UVa 11063 - B2-Sequence

UVa 11063 - B2-Sequence

来源:程序员人生   发布时间:2014-11-20 08:13:43 阅读次数:2522次

题目:给你1组数据{ b1,b2,...,bk }中,判断是不是任意两个数字的和都不同。

分析:数论。计算出所有结果,排序判断相邻结果是不是相同便可。

说明:注意数据的合法性检查。

#include <algorithm> #include <iostream> #include <cstdlib> #include <cstdio> using namespace std; int data[111]; int sum[5555]; int main() { int n,T = 1; while (~scanf("%d",&n)) { for (int i = 0 ; i < n ; ++ i) scanf("%d",&data[i]); int count = 0,flag = 0; for (int i = 0 ; i < n ; ++ i) for (int j = i ; j < n ; ++ j) sum[count ++] = data[i]+data[j]; if (data[0] < 1) flag = 1; for (int i = 1 ; i < n ; ++ i) if (data[i] <= data[i⑴]) { flag = 1; break; } sort(sum, sum+count); for (int i = 1 ; i < count ; ++ i) if (sum[i] == sum[i⑴]) { flag = 1; break; } if (!flag) printf("Case #%d: It is a B2-Sequence. ",T ++); else printf("Case #%d: It is not a B2-Sequence. ",T ++); } return 0; }







生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生