Advertisement
Diogo03

Sort

Nov 14th, 2024 (edited)
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.17 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define int long long int
  4.  
  5. signed main() {
  6.     ios_base::sync_with_stdio(false);
  7.     cin.tie(nullptr);
  8.    
  9.     int t;
  10.     cin >> t;
  11.     while (t--) {
  12.         int n, q;
  13.         cin >> n >> q;
  14.        
  15.         string a, b;
  16.         cin >> a >> b;
  17.  
  18.         vector<vector<int>> freqa(n, vector<int>(26, 0)), freqb(n, vector<int>(26, 0));
  19.  
  20.         freqa[0][a[0] - 'a'] = 1;
  21.         freqb[0][b[0] - 'a'] = 1;
  22.  
  23.         for (int i = 1; i < n; i++) {
  24.             freqa[i] = freqa[i - 1];
  25.             freqa[i][a[i] - 'a']++;
  26.         }
  27.  
  28.         for (int i = 1; i < n; i++) {
  29.             freqb[i] = freqb[i - 1];
  30.             freqb[i][b[i] - 'a']++;
  31.         }
  32.  
  33.         while (q--) {
  34.             int l, r;
  35.             cin >> l >> r;
  36.             l--;
  37.             r--;
  38.  
  39.             int sum = 0;
  40.             for (int i = 0; i < 26; i++) {
  41.                 int v1 = (l == 0) ? freqa[r][i] : freqa[r][i] - freqa[l - 1][i];
  42.                 int v2 = (l == 0) ? freqb[r][i] : freqb[r][i] - freqb[l - 1][i];
  43.                 sum += abs(v1 - v2);
  44.             }
  45.             cout << sum / 2 << endl;
  46.         }
  47.     }
  48.    
  49.     return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement