大致题意
大概就是能不能够沿着所有的边走一遍并且走回原点
第一行的第一个输入是n个点,第二个输入是m条边,接下来m行就是边了
解题思路
第一眼看完题,感觉蛮简单的,
看题意就知道是求是否存在欧拉回路,即是否为欧拉图
欧拉图的充要条件是
一个无向连通图如果度数均为偶数则为欧拉图
所以这题的大致解题思路就是先看每个点的度数是否为偶数,然后在看这个图是不是连通图
判断连通图的话就是用dfs
void euler(int u) {
visit[u] = true; //返问过的节点设置为true
for (int i = 0; i < n; i++) {
if (!visit[i] && maps[u][i] == 1) { //当前边的终点节点未返问过,则继续往下遍历
maps[u][i] = maps[i][u] = 0;
euler(i);
}
}
}
。
。
。
如果这样简单的话,这大概就不是10+WA了(╯‵□′)╯︵┻━┻
这个题思路是这样的,但是要注意的小点还蛮多的
-
就是关于存在孤立的点,也是可以的
就是输入样例
10 2
9 8
8 9
输出应该是 Possible
-
就是如果第一个输入N小于2时,M小于2时均输出Not Possible
ps:这题10+WA真是真实心态炸裂,而且还有几发非常弱智的TLE….心塞