记录编号 326817 评测结果 AAAAWWWWWW
题目名称 森林大礼包 最终得分 40
用户昵称 Gravatarciyou 是否通过 未通过
代码语言 C++ 运行时间 2.909 s
提交时间 2016-10-21 15:59:05 内存使用 1.84 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<vector>
using namespace std;
vector<int> list[100006];
int f[100006];
int find(int x){
    if(f[x]!=-1) return f[x];
    if(x==0) return 1;
    int ans=0;
    for(int i=0;i<list[x].size();i++){
        ans+=find(list[x][i]);
    }
    return f[x]=ans;
}
int main(){
    freopen("three_squirrels.in","r",stdin);
    freopen("three_squirrels.out","w",stdout);
    f[0]=1;
    int N;
    cin>>N;
    memset(f,-1,sizeof(f));
    for(int i=1;i<=N;i++){
        int k;
        cin>>k;
        for(int j=1;j<=k;j++){
            int t;
            cin>>t;
            list[i].push_back(t);
        }
    }
    cout<<find(N);
    fclose(stdin);
    fclose(stdout);
    return 0;
}