uva 10596 - Morning Walk

来源:互联网 发布:windows似乎未正确加载 编辑:程序博客网 时间:2024/05/14 10:48

    欧拉回路题目;又粗心了  ,大写的P!!!!!!!!!!!!

   另外这个题数组g开到10000*100000会TLE

#include<cstdio>#include<cstring>#include<cstdlib>#include<iostream>using namespace std;int g[210][210],num[210];int cnt,vis[210];int n,r;void euler(int u){    cnt++;    vis[u]=1;    for(int v=0; v<n; v++)        if(g[u][v]&&!vis[v])            euler(v);            return ;}int main(){    while(scanf("%d %d",&n,&r)!=EOF)    {        int a,b;        memset(g,0,sizeof(g));        memset(num,0,sizeof(num));        cnt=0;        memset(vis,0,sizeof(vis));        for(int i=0; i<r; i++)        {            scanf("%d%d",&a,&b);            g[a][b]=1;            num[a]++;            num[b]++;        }        int flag=0;        for(int i=0; i<n; i++)        {            if(num[i]%2)            {                flag=1;                printf("Not Possible\n");                break;            }        }        if(!flag)        {            euler(0);            if(cnt!=n)                 printf("Not Possible\n");            else  printf("Possible\n");        }    }    return 0;}



原创粉丝点击