原题p2016 战略游戏
提交详情(wa了第一个点)
代码
#include<bits/stdc++.h>
using namespace std;
int n,k,x;
int e[1505][1505],f[1501][2];
void dfs(int u)
{
f[u][0]=0;
f[u][1]=1;
for(int i=1;i<=e[u][0];i++)
{
int v=e[u][i];
dfs(v);
f[u][0]+=f[v][1];
f[u][1]+=min(f[v][1],f[v][0]);
}
}
int main()
{
cin>>n;
for(int i=0;i<n;i++)
{
int c;
cin>>c;
cin>>k;
for(int j=1;j<=k;j++)
{
cin>>x;
e[c][++e[c][0]]=x;
}
}
dfs(0);
cout<<min(f[0][0],f[0][1]);
return 0;
}