22周赛 - Virtual Judge (vjudge.net)
题意
给5个数 N A B C D
满足 N - 1 = A + B + C + D;
给出一串由XY组成的字符 N
A 代表 XX B 代表XY C代表 YX D代表YY
如果满足以上条件则输出YES 否则输出NO
思路 经过手动模拟发现 B和C之间满足 |B-C|<=1; 另外如果B==0&&C==0
则A和D必有一个也为0
代码
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n,a,b,c,d;
cin>>n>>a>>b>>c>>d;
if(abs(b-c)>1)
{
cout<<"No"<<endl;
}
else if(b==0&&c==0&&a>0&&d>0)
{
cout<<"No"<<endl;
}
else cout<<"Yes"<<endl;
return 0;
}