关注
第二题 我是反向建图然后跑拓扑做dp
bool ans[maxn];
vector<int> G[maxn];
int du[maxn];
void solve()
{
int n, m;
cin >> n >> m;
string s;
for(int i = 1; i <= n; ++i) {
ans[i] = true;
G[i].clear();
du[i] = 0;
}
for(int i = 0; i < m; ++i) {
int u, v;
cin >> u >> v;
if(u == n) continue;
G[v].push_back(u);
++du[u];
}
cin >> s;
queue<int> que;
que.push(n);
while(!que.empty()) {
int v = que.front();
que.pop();
bool now = !ans[v];
for(int u : G[v]) {
ans[u] = min(ans[u], now);
--du[u];
if(du[u] == 0) que.push(u);
}
}
if(s == "Alice") {
if(ans[1]) cout << "Alice" << endl;
else cout << "Bob" << endl;
}else {
if(!ans[1]) cout << "Alice" << endl;
else cout << "Bob" << endl;
}
}
查看原帖
2 2
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 面试问题记录 #
63531次浏览 920人参与
# 工作中,你有没有遇到非常爱骂人的领导? #
17913次浏览 131人参与
# 京东TGT #
48844次浏览 177人参与
# 我的2024小目标 #
58979次浏览 395人参与
# 工作一周年分享 #
19511次浏览 111人参与
# 互联网行业现在还值得去吗 #
6707次浏览 42人参与
# 硬件人的简历怎么写 #
255236次浏览 2890人参与
# 面试吐槽bot #
15321次浏览 94人参与
# 面试经验谈 #
41451次浏览 562人参与
# 拼多多工作体验 #
17020次浏览 152人参与
# 上班到公司第一件事做什么? #
38982次浏览 367人参与
# 实习生应该准时下班吗 #
202351次浏览 1320人参与
# 你觉得技术面多长时间合理? #
86503次浏览 647人参与
# 国企和大厂硬件兄弟怎么选? #
120419次浏览 1656人参与
# 入职第五天,你被拉进了几个工作群 #
18278次浏览 80人参与
# 工作时那些社死瞬间 #
23884次浏览 174人参与
# 假如我穿越到了妈妈的18岁 #
6657次浏览 43人参与
# 你遇到过哪些神仙同事 #
72855次浏览 648人参与
# 请用你的专业向妈妈表白 #
12095次浏览 88人参与
# 技术转行的心路历程 #
47836次浏览 665人参与
# 你想吐槽公司的哪些规定 #
15156次浏览 58人参与