Hustlingbeast_Anish

Kill_Monsters_Anish

Jun 12th, 2023
915
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.01 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define ll long long
  3. #define ld long double
  4. using namespace std;
  5.  
  6. bool cmp(const pair<int, int> &p1, const pair<int, int> &p2)
  7. {
  8.     if (p1.first == p2.first)
  9.         return p1.second < p2.second;
  10.     return p1.first < p2.first;
  11. }
  12. int main()
  13. {
  14.     ll n, s = 0, q;
  15.     cin >> n;
  16.     vector<ll> v(n), pre(n);
  17.     vector<pair<ll, ll>> pr(n);
  18.     for (ll i = 0; i < n; ++i)
  19.     {
  20.         cin >> v[i];
  21.         s += v[i];
  22.         pre[i] = s;
  23.         pr[i] = {v[i], i};
  24.     }
  25.     sort(pr.begin(), pr.end(), cmp);
  26.     cin >> q;
  27.     while (q--)
  28.     {
  29.         ll c;
  30.         cin >> c;
  31.  
  32.         if (c == 1)
  33.         {
  34.             ll l, r;
  35.             cin >> l >> r;
  36.             l--;
  37.             r--;
  38.             ll y = pre[r];
  39.             if (l - 1 >= 0)
  40.                 y -= pre[l - 1];
  41.             cout << y << endl;
  42.         }
  43.         else
  44.         {
  45.             ll k;
  46.             cin >> k;
  47.             cout << pr[k - 1].second + 1 << endl;
  48.         }
  49.     }
  50.     return 0;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment