#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
#define pb push_back
#define int long long
const int N = 1e6 + 5, M = 26, LG = 20;
int n , F[N] , i , q;
string s , t;
char x;
void add(int i , int x){
    while(i <= n){
        F[i] += x;
        i += (i&(-i));
    }
}
int prep(int i){
    int sum = 0;
    while(i >= 0){
        sum += F[i];
        if (!i) break;
        i -= (i&(-i));
    }
    return sum;
}
void solve(){
    cin >> n >> q >> s >> t;
    
    int k = 0 , ans = 0;
    for (int i = 0 ; i < n-1  ; i++){
        ans += 25 - ((s[i] - 'a') + k);
        k += (s[i] - 'a');
    }
    int sum = t[n-1] - 'a';
    for (int i = n-2 ; i >= 0 ; i--){
        sum = (t[i] - 'a') + 25 - sum;
        sum %= 26;
    }
    // cout << k << ' ' << sum << endl;
    if (ans%26 == sum){
        cout << "da" << endl;
    }else{
        cout << "ne" << endl;
    }
    while(q--){
        cin >> i >> x;
        k += (((x - 'a') - (s[i-1] - 'a'))%M + M)%M;
        k %= M;
        if (k == sum){
            cout << "da" << endl;
        }else{
            cout << "ne" << endl;
        }
        // if (i&1) add(i , (x - 'a' + 1) - (s[i-1] - 'a' + 1));
        // else add(i , -(x - 'a' + 1) + (s[i-1] - 'a' + 1));
        // // cout << prep(n) << ' ' << sum << endl;
        // if (prep(n) % 26 == sum % 26){
        //     cout << "da" << endl;
        // }else{
        //     cout << "ne" << endl;
        // }
    }
    
}
signed main(){
    ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    int ts = 1;
    // cin >> ts;
    while(ts--){
        solve();
    }
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |