博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces Round #445 A. ACM ICPC【暴力】
阅读量:6185 次
发布时间:2019-06-21

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

A. ACM ICPC
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

In a small but very proud high school it was decided to win ACM ICPC. This goal requires to compose as many teams of three as possible, but since there were only 6 students who wished to participate, the decision was to build exactly two teams.

After practice competition, participant number i got a score of aiTeam score is defined as sum of scores of its participants. High school management is interested if it's possible to build two teams with equal scores. Your task is to answer that question.

Input

The single line contains six integers a1, ..., a6 (0 ≤ ai ≤ 1000) — scores of the participants

Output

Print "YES" (quotes for clarity), if it is possible to build teams with equal score, and "NO" otherwise.

You can print each character either upper- or lowercase ("YeS" and "yes" are valid when the answer is "YES").

Examples
input
1 3 2 1 2 1
output
YES
input
1 1 1 1 1 99
output
NO
Note

In the first sample, first team can be composed of 1st, 2nd and 6th participant, second — of 3rd, 4th and 5th: team scores are1 + 3 + 1 = 2 + 1 + 2 = 5.

In the second sample, score of participant number 6 is too high: his team score will be definitely greater.

【题意】:存在某三个和另外三个相等输出YES,否则输出NO

【分析】:暴力

【代码】:

#include 
using namespace std;const int maxn = 505;int main(){ int a[10],sum[50]; memset(sum,0,sizeof(sum)); for(int i=1;i<=6;i++) { cin>>a[i]; if(a[1]+a[2]+a[3]==a[4]+a[5]+a[6]) { printf("YES\n"); return 0; } if(a[1]+a[2]+a[4]==a[3]+a[5]+a[6]) { printf("YES\n"); return 0; } if(a[1]+a[2]+a[5]==a[3]+a[4]+a[6]) { printf("YES\n"); return 0; } if(a[1]+a[2]+a[6]==a[3]+a[4]+a[5]) { printf("YES\n"); return 0; } if(a[1]+a[3]+a[4]==a[2]+a[5]+a[6]) { printf("YES\n"); return 0; } if(a[1]+a[3]+a[5]==a[2]+a[4]+a[6]) { printf("YES\n"); return 0; } if(a[1]+a[3]+a[6]==a[2]+a[4]+a[5]) { printf("YES\n"); return 0; } if(a[2]+a[3]+a[4]==a[1]+a[5]+a[6]) { printf("YES\n"); return 0; } if(a[2]+a[3]+a[5]==a[1]+a[4]+a[6]) { printf("YES\n"); return 0; } if(a[2]+a[3]+a[6]==a[1]+a[4]+a[5]) { printf("YES\n"); return 0; } } printf("NO\n"); return 0;}
我的傻逼代码

 

#include 
using namespace std;#include
#include
#include
#include
#include
#include
using namespace std;int a[7],sum=0;int main(){ for(int i=0;i<6;i++) { cin>>a[i]; sum+=a[i]; } for(int i=0;i<6;i++) { for(int j=i+1;j<6;j++) { for(int k=j+1;k<6;k++) { if(2*(a[i]+a[j]+a[k])==sum) { printf("YES\n"); return 0; } } } } printf("NO\n");}
枚举

 

#include 
using namespace std;int main() { int a[6]; for(int i = 0; i < 6; i++) cin >> a[i]; sort(a, a + 6); do{ if((a[0] + a[1] + a[2]) == (a[3] + a[4] + a[5])){ cout << "YES"; return 0; } }while(next_permutation(a, a + 6)); cout << "NO"; return 0;}
next_permutation的妙用

 

 

转载于:https://www.cnblogs.com/Roni-i/p/7831053.html

你可能感兴趣的文章
前端面试题整理
查看>>
Azure上的Web Apps极其相关服务
查看>>
HP iLo licenses
查看>>
IIS7.5中asp.net 区域 area中的路径 URLRewriter报错 .. 在顶级目录上退出
查看>>
javascript的apply和call,执行环境,垃圾回收,闭包
查看>>
Linux下阻塞与非阻塞IO
查看>>
寻找内网主机被***的方法
查看>>
我使用过的Linux命令之mv - 文件或目录改名、移动位置
查看>>
Required request body is missing 错误解决
查看>>
关于XneApp 5.x~6.x Data Store备份/迁移
查看>>
VMware Vsphere4 设置虚拟机随ESXI 自动启动
查看>>
MDT2010部署之一 安装和介绍
查看>>
基于ACL和ip策略的路由重发布
查看>>
在native层中访问Java层对象
查看>>
android之Layout(四)
查看>>
PostgreSQL安装和基本使用(一)
查看>>
怎么找到公众微信上的视频链接
查看>>
vsftp问题记录
查看>>
我的友情链接
查看>>
vscode 插件推荐
查看>>