Advertisement
Guest User

Untitled

a guest
Oct 20th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. vector <vector <int> > data;
  6.  
  7. pair <int, int> f(int k) {
  8. if (data[k].size() == 0) {
  9. pair <int, int> x = make_pair(1, 0);
  10. return x;
  11. } else {
  12. int a = 1, b = 0;
  13. for (int i = 0; i < data[k].size(); ++i) {
  14. if (data[k][i] > k) {
  15. a += f(data[k][i]).second;
  16. b += f(data[k][i]).first;
  17. }
  18. }
  19. return(make_pair(a, b));
  20. }
  21. }
  22.  
  23. int main() {
  24. int n;
  25. cin >> n;
  26. vector <vector <int> > data2(n);
  27. for (int i = 0; i < n; ++i) {
  28. int x;
  29. cin >> x;
  30. vector <int> data1(x);
  31. for (int j = 0; j < x; ++j) {
  32. cin >> data1[j];
  33. }
  34. data2[i] = data1;
  35. }
  36. data = data2;
  37. pair <int, int> result = f(0);
  38. if (result.first < result.second) {
  39. cout << result.first;
  40. } else {
  41. cout << result.second;
  42. }
  43. return 0;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement