fork download
  1. #include <vector>
  2. #include <list>
  3. #include <map>
  4. #include <set>
  5. #include <queue>
  6. #include <deque>
  7. #include <stack>
  8. #include <bitset>
  9. #include <algorithm>
  10. #include <functional>
  11. #include <numeric>
  12. #include <utility>
  13. #include <sstream>
  14. #include <iostream>
  15. #include <iomanip>
  16. #include <cstdio>
  17. #include <cmath>
  18. #include <cstdlib>
  19. #include <ctime>
  20. #include <cstring>
  21. #include <math.h>
  22. #include <string>
  23. #define lli long long int
  24. using namespace std;
  25. typedef vector<long long int> vi;
  26.  
  27. const int N = 1001;
  28. int n, K, count1, ans;
  29. vector< vi > graph;
  30. vector< vi > adjlist;
  31. int b[N];
  32. bool visited[N];
  33. bool pos[N][N];
  34. int dfs(lli node){
  35. ans++;
  36.  
  37. visited[node] = true;
  38. for(auto v:adjlist[node]){
  39. if(!visited[v]){
  40. dfs(v);
  41. }
  42. }
  43. return ans;
  44. }
  45.  
  46. int main(){
  47. lli x;
  48. memset(pos, true, sizeof pos);
  49. memset(b, 0, sizeof b);
  50. memset(visited, false, sizeof visited);
  51.  
  52. ans = 0;
  53. visited[0] = true;
  54. cin >> n >> K;
  55. graph.resize(n+1);
  56. adjlist.resize(n+1);
  57. count1 = 0;
  58. for(lli i = 0; i < n; i++){
  59. cin >> x;
  60. b[i] = x;
  61.  
  62. for(lli j = 0; j < x; j++){
  63. lli y;
  64. cin >> y;
  65. graph[i].push_back(y);
  66. }
  67. }
  68.  
  69. for(lli parent = 0; parent < n; parent++){
  70. for(lli child = 0; child < n; child++){
  71. if(!pos[parent][child]) continue;
  72. pos[parent][child] = false;
  73. if(child == parent) continue;
  74. count1 = 0;
  75. for(lli k = 0; k < b[child]; k++){
  76. for(lli l = 0; l < b[parent]; l++){
  77.  
  78. if(graph[parent][l] == graph[child][k]){
  79. count1++;
  80. }
  81. if(count1 >= K){
  82. adjlist[parent].push_back(child);
  83. break;
  84. }
  85. }
  86.  
  87.  
  88.  
  89. }
  90. }
  91. }
  92. cout << dfs(0);
  93.  
  94. }
Success #stdin #stdout 0s 4460KB
stdin
Standard input is empty
stdout
1