序列可简单图化

给定一个非负整数序列 (d1,d2,...dn) ,若存在一个无向简单图使得图中各点的度与此序列一一对应,则称此序列可简单图化。

输入:

输入有两行

第一行输入一个整数 N ,代表序列中非负整数的个数。 N <= 3000

第二行 N 个元素以空格隔开,代表这 N 个非负整数所组成的序列。

输出:

测试结果有一行输出

yes 代表此序列可简单图化

no 代表此序列不可简单图化


测试输入:

3
1 1 2


测试输出:

yes


程序代码:

#include  
#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");  
}  


你可能感兴趣的:(Discrete,Mathematics)