不写了。。。欧拉通路。读入太迷。
- #include <stdio.h>
- #include <string.h>
- #define N 101
- int main()
- {
- char s[200];
- int door,de[N],odd,eve,n,m,p,cc,len,k;
- while(scanf("%s",s) != EOF)
- {
- if(s[3] == 'O')
- break;
- scanf("%d %d",&m,&n); ///这里如歌scanf("%d %d ",&m,&n) 一直WA
- getchar(); ///
- memset(de,0,sizeof(de));
- door = odd = eve = 0;
- for(int i = 0; i < n; ++i)
- {
- p = 0;
- gets(s);
- while(s[p] && s[p] == ' ') ++ p;
- while(sscanf(s + p,"%d%n",&k,&cc) == 1)
- {
- ++door;
- de[i] ++;
- de[k] ++;
- p += cc;
- while(s[p] && s[p] == ' ') ++ p;
- }
- }
- scanf("%*s");
- for(int i = 0; i < n; ++i)
- if(de[i]&1)
- ++odd;
- else
- ++eve;
- if(odd == 0 && m == 0 || odd == 2 && (de[m]&1) && (de[0] & 1) && m != 0)
- printf("YES %d ",door);
- else
- printf("NO ");
- }
- return 0;}