社区讨论
求调84pts(玄关)
P2016[SEERC 2000] 战略游戏参与者 2已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @mhjhvo3a
- 此快照首次捕获于
- 2025/11/04 02:49 4 个月前
- 此快照最后确认于
- 2025/11/04 02:49 4 个月前
样例对的,第一个点WA了,其他全部AC(我特判了才对)。
CPP#include<bits/stdc++.h>
#define N 5010
#define int long long
using namespace std;
int f[N][N],fa[N],n,a,b,z;
vector<int> s[N];
void dfs(int x) {
f[x][0]=0;
f[x][1]=1;
if(s[x].size()==0) {
return;
}
for(int i=0;i<s[x].size();i++) {
int y=s[x][i];
dfs(y);
f[x][0]+=f[y][1];
f[x][1]+=min(f[y][1],f[y][0]);
}
}
signed main() {
cin>>n;
for(int i=1;i<=n;i++) {
cin>>a>>b;
a++;
for(int j=1;j<=b;j++) {
cin>>z;
z++;
s[a].push_back(z);
fa[z]=1;
}
}
int r;
for(int i=1;i<=n;i++) {
fa[i]==0;
r=i;
break;
}
dfs(r);
cout<<min(f[r][0],f[r][1]);
return 0;
}
如果调对保证关注。
回复
共 7 条回复,欢迎继续交流。
正在加载回复...