Submission #1284237

#TimeUsernameProblemLanguageResultExecution timeMemory
1284237muhammad-mutahirBliskost (COI23_bliskost)C++20
0 / 100
0 ms332 KiB
#include <bits/stdc++.h> using namespace std; #define print(l) for(auto i:l) cout<<i<<" ";cout<<endl; #define input(t,l,n) vector<t>l(n);for(int i = 0;i<n;i++)cin>>l[i]; #define int long long #define pb push_back #define ordered_set tree<int, null_type,less<int>, rb_tree_tag,tree_order_statistics_node_update> #define all(l) l.begin(),l.end() #define pii pair<int,int> #define fi first #define se second const int M = 1e9+7; const int inf = 1e18; int bp(int x, int y, int p){ int res = 1; x = x % p; while (y > 0) { if (y & 1) res = (res * x) % p; y = y >> 1; x = (x * x) % p; } return res; } int MI(int n, int p){ return bp(n, p - 2, p); } int mul(int x,int y, int p){ return x * 1ull * y % p; } int di(int x,int y, int p){ return mul(x, MI(y, p), p); } int n , m , k , q; void solve(int testcase_number){ cin>>n>>q; string a,b; cin>>a>>b; int opa = 0; int opb = 0; for(int i =0 ;i+1<n;i++){ // int di = abs(a[i]-b[i]+opa-opb); // cout<<a[i]-b[i]<<endl; int aa = a[i]-'a'; int ba = b[i]-'a'; aa+=opa; ba+=opb; aa%=26; ba%=26; int di = abs(aa-ba); // cout<<26-di<<" "<<di<<endl; if(di > 26-di){ di = 26-di; if(aa > ba){ opa = di; opb = 0; } else{ opb = di; opa = 0; } } else{ if(aa < ba){ opa = di; opb = 0; } else{ opb = di; opa = 0; } } // cout<< // cout<<opa<<" "<<opb<<endl; } // cout<<a.back()-'a'+opa<<" "<<b.back()<<endl; if((a.back()-'a'+opa)%26 == (b.back()-'a'+opb)%26){ cout<<"da"<<endl; } else{ cout<<"ne"<<endl; } cout<<opa<<" "<<opb<<endl; for(int jk =0 ;jk<q;jk++){ int jjk; char ff; cin>>jjk>>ff; opa-=abs(a[jjk-1]-ff); a[jjk-1] = ff; // int opa = 0; // int opb = 0; // for(int i =0 ;i+1<n;i++){ // // int di = abs(a[i]-b[i]+opa-opb); // // cout<<a[i]-b[i]<<endl; // int aa = a[i]-'a'; // int ba = b[i]-'a'; // aa+=opa; // ba+=opb; // aa%=26; // ba%=26; // int di = abs(aa-ba); // // cout<<26-di<<" "<<di<<endl; // if(di > 26-di){ // di = 26-di; // if(aa > ba){ // opa = di; // opb = 0; // } // else{ // opb = di; // opa = 0; // } // } // else{ // if(aa < ba){ // opa = di; // opb = 0; // } // else{ // opb = di; // opa = 0; // } // } // // cout<< // // cout<<opa<<" "<<opb<<endl; // } // cout<<opa<<" "<<opb<<endl; // cout<<a.back()-'a'+opa<<" "<<b.back()<<endl; if((a.back()-'a'+opa)%26 == (b.back()-'a'+opb)%26){ cout<<"da"<<endl; } else{ cout<<"ne"<<endl; } } } signed main(){ // ios::sync_with_stdio(0);//DO NOT USE IN INTERACTIVE // cin.tie(0), cout.tie(0); // cout << fixed<<setprecision(9); int t = 1; // cin>>t; for(int i = 1;i<=t;i++){ solve(i); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...