记录编号 326817 评测结果 AAAAWWWWWW
题目名称 森林大礼包 最终得分 40
用户昵称 Gravatarciyou 是否通过 未通过
代码语言 C++ 运行时间 2.909 s
提交时间 2016-10-21 15:59:05 内存使用 1.84 MiB
显示代码纯文本
  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. #include<vector>
  5. using namespace std;
  6. vector<int> list[100006];
  7. int f[100006];
  8. int find(int x){
  9. if(f[x]!=-1) return f[x];
  10. if(x==0) return 1;
  11. int ans=0;
  12. for(int i=0;i<list[x].size();i++){
  13. ans+=find(list[x][i]);
  14. }
  15. return f[x]=ans;
  16. }
  17. int main(){
  18. freopen("three_squirrels.in","r",stdin);
  19. freopen("three_squirrels.out","w",stdout);
  20. f[0]=1;
  21. int N;
  22. cin>>N;
  23. memset(f,-1,sizeof(f));
  24. for(int i=1;i<=N;i++){
  25. int k;
  26. cin>>k;
  27. for(int j=1;j<=k;j++){
  28. int t;
  29. cin>>t;
  30. list[i].push_back(t);
  31. }
  32. }
  33. cout<<find(N);
  34. fclose(stdin);
  35. fclose(stdout);
  36. return 0;
  37. }