题目链接:http://acm.zzuli.edu.cn/problem.php?id=2542
2542: D学长 落落大方
时间限制: 1 Sec 内存限制: 128 MB
提交: 1616 解决: 410
[提交] [状态] [讨论版] [命题人:admin]
题目描述
众所周知,D学长落落大方,喜欢和朋友们分享自己喜欢的食品。
某日,霍营老哥wonter子和ZY来到知春里来找D学长讨论Sqoop、Kettle、Hadoop、Hive、ZooKeeper、Hbase、Redis、Kafka、NBI Dashboard、Scala、Nutch、Scrapy、Neo4j、Cassandra、Storm、Mahout、Pentaho、Avro、Protobuf、Phoenix、Kylin、Zeppelin、ElasticSearch、Solr、Azkaban、Mesos、Sentry、Docker、Kubernetes等相关问题,大家相谈甚欢。
霍营老哥们要离开的时候,D学长想拿出4袋糖果分给他们2人,每袋糖果数量分别是:a1,a2,a3,a4个。要求每位朋友获得的糖果数量一样,且只能整袋给,不能分开给、自己也不能留下糖果。D学长能成功的将糖果送出去吗?
输入
输入四个整数,分别表示a1, a2 , a3, a4,1 <= a1,a2,a3,a4 <= 100
输出
如果可以将糖果送出去,输出”YES”, 否则输出”NO”, 输出不包含引号
样例输入 Copy
1 7 11 5
样例输出 Copy
YES
思路:
只需要判断两个人能不能获得同样数量的糖果,也就是判断某一个数或者某两个数相加(题目上没有说必须是每个人两包糖果),等不等于余下的数字之和。
代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a1, a2, a3, a4;
scanf("%d %d %d %d",&a1, &a2, &a3, &a4);
if(a1 + a2 == a3 + a4 || a1 + a3 == a2 + a4 ||a1 + a4 == a2 + a3)
printf("YES\n");
else if(a1 == a2 + a3 + a4 || a2 == a1 + a3 + a4 || a3 == a1 + a2 + a4 ||a4 == a1 + a2 + a3)
printf("YES\n");
else
printf("NO\n");
return 0;
}