Josif_tepe

Untitled

Feb 26th, 2026
307
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <queue>
  4. #include <stack>
  5. using namespace std;
  6. typedef long long ll;
  7. const int maxn = 1e5 + 10;
  8. int pref_1[maxn], pref_2[maxn], pref_3[maxn];
  9.  
  10. int main() {
  11.     ios_base::sync_with_stdio(false);
  12.    
  13.     int n, q;
  14.     cin >> n >> q;
  15.    
  16.     vector<int> v(n);
  17.     int sum1 = 0, sum2 = 0, sum3 = 0;
  18.    
  19.     for(int i = 0; i < n; i++) {
  20.         cin >> v[i];
  21.         if(v[i] == 1) {
  22.             sum1++;
  23.         }
  24.         if(v[i] == 2) {
  25.             sum2++;
  26.         }
  27.         if(v[i] == 3) {
  28.             sum3++;
  29.         }
  30.        
  31.         pref_1[i] = sum1;
  32.         pref_2[i] = sum2;
  33.         pref_3[i] = sum3;
  34.     }
  35.    
  36.     for(int i = 0; i < q; i++) {
  37.         int a, b;
  38.         cin >> a >> b;
  39.        
  40.         a--; b--;
  41.        
  42.        
  43.         int res1, res2, res3;
  44.         if(a == 0) {
  45.             res1 = pref_1[b];
  46.             res2 = pref_2[b];
  47.             res3 = pref_3[b];
  48.         }
  49.         else {
  50.             res1 = pref_1[b] - pref_1[a - 1];
  51.             res2 = pref_2[b] - pref_2[a - 1];
  52.             res3 = pref_3[b] - pref_3[a - 1];
  53.         }
  54.         cout << res1 << " " << res2 << " " << res3 << endl;
  55.        
  56.     }
  57.     return 0;
  58. }
  59.  
Advertisement
Add Comment
Please, Sign In to add comment