题解 | 小红的树上游戏

小红的树上游戏

https://www.nowcoder.com/practice/0f7ab6d60bad4cd9b99d7df885521054

#include <iostream> 
#include <vector>

using namespace std;

//对于target的degree是1的情况直接赢,对于 >= 2的情况在整个图只剩target和它的两个叶子节点之前其他的叶子节点随便取得,只需判断是谁最后一步使得其度为1
//注意的是这个无根树每次只取叶子节点是不会把它“分裂成两个”的
int main() {
	int t;
	cin >> t;
	//统计target的度 
	while (t--) {
		int n, target, degree = 0;
		cin >> n >> target;
		int v1, v2;
		for (int i = 0; i < n - 1; i++) {
			cin >> v1 >> v2;
			if (v1 == target || v2 == target) degree++;
		}
		string ans = "lose";
		if (degree == 1 || (n - 1) % 2) ans = "win";
		cout << ans << endl;
	}
}

全部评论

相关推荐

秋招投简历提醒助手:个人经验是,一般面二十场左右就会进入侃侃而谈阶段。我今年七月末的时候开始的第一次面试,都是很多不会,回复很慢。后面慢慢迭代,到九月中的时候基本上面啥说啥,很放松的状态
远程面试的尴尬瞬间
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务