给定一个非负整数序列 (d1,d2,...dn) ,若存在一个无向简单图使得图中各点的度与此序列一一对应,则称此序列可简单图化。
输入:
输入有两行
第一行输入一个整数 N ,代表序列中非负整数的个数。 N <= 3000
第二行 N 个元素以空格隔开,代表这 N 个非负整数所组成的序列。
输出:
测试结果有一行输出
yes 代表此序列可简单图化
no 代表此序列不可简单图化
测试输入:
3
1 1 2
测试输出:
yes
程序代码:
#include<stdio.h>
#define N 3002
int main()
{
int n,i,sum=0,odd=0;
int a[N];
scanf("%d",&n);
for(i=1;i<=n;i++){
scanf("%d",&a[i]);
sum=sum+a[i];
if(a[i]%2!=0)
odd=odd+1;
}
if(sum%2!=0||odd%2!=0)
{
printf("no\n");
return 0;
}
else
printf("yes\n");
}