Advertisement
Guest User

Untitled

a guest
Sep 18th, 2014
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.00 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <vector>
  3. #include <string>
  4. #include <iostream>
  5. #include <algorithm>
  6. #include <cmath>
  7. #include <cstdio>
  8. #include <cstdlib>
  9. #include <fstream>
  10. #include <map>
  11. #include <set>
  12. #include <queue>
  13. #include <memory.h>
  14. #include <time.h>
  15. #include <iostream>
  16. #include <string>
  17. #include <cstring>
  18. #include <vector>
  19. #include <cmath>
  20. #include <map>
  21. #include <algorithm>
  22. #include <cstdio>
  23. #include <set>
  24. #include <queue>
  25. #include <cassert>
  26. #include <climits>
  27. #define sz(x) int((x).size())
  28. #define FOR(i,a,b) for(ll(i) = (a); (i) <= (b); ++(i))
  29. #define ROF(i,a,b) for(ll(i) = (a); (i) >= (b); --(i))
  30. #define rep(i,n) for (int(i) = 0; (i) < (n); ++(i))
  31. #define fe(i,a) for (ll(i) = 0; (i) < int((a).size()); ++(i))
  32. #define C(a) memset((a),0,sizeof(a))
  33. #define pb push_back
  34. #define ppb pop_back
  35. #define all(c) (c).begin(), (c).end()
  36. #define sqr(a) (a)*(a)
  37. #define mp(a,b) make_pair((a), (b))
  38. #define X first
  39. #define Y second
  40. #define file freopen("input.txt","r",stdin)
  41. #define file2 freopen("output.txt", "w",stdout)
  42. #define text freopen("input.txt","r",stdin); freopen("output.txt", "w",stdout)
  43. using namespace std;
  44. typedef vector<int> vint;
  45. typedef long long ll;
  46. typedef unsigned long long ull;
  47. typedef pair<int, int> pii;
  48. #include <iostream>
  49. #include <cstdio>
  50. #include <cstdlib>
  51. #include <cmath>
  52. #include <cstring>
  53. #include <string>
  54. #include <vector>
  55. #include <climits>
  56. #include <cassert>
  57. #define y1 vamdlsfmvldf
  58. using namespace std;
  59. const ll mod = (ll)1e9 + 7;
  60. const ll INF = (ll)(1e17);
  61. const int N = 200005;
  62. int parent[N];
  63. int sum[N];
  64. int main(){
  65.    int n;
  66.    cin >> n;
  67.    long long ans = 0;
  68.    for(int i = 0; i < n; ++i){
  69.        int x, t;
  70.        scanf("%d %d", &t, &x);
  71.        if(x == 0){
  72.            sum[i + 1] = sum[parent[t]];
  73.            parent[i + 1] = parent[parent[t]];
  74.        }
  75.        else{
  76.            sum[i + 1] = sum[t] + x;
  77.            parent[i + 1] = t;
  78.        }
  79.        ans += sum[i + 1];
  80.    }
  81.    cout << ans << endl;
  82.    return 0;
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement