Submission #1208908

#TimeUsernameProblemLanguageResultExecution timeMemory
1208908ezzzayBliskost (COI23_bliskost)C++20
15 / 100
27 ms4916 KiB
#include<bits/stdc++.h> using namespace std; #define ff first #define ss second #define pb push_back #define int long long const int N=3e5+5; const int P=1e9+7; int bit[N]; void update(int idx, int val){ while(idx<N){ bit[idx]+=val; idx+= idx & -idx; } } int find(int idx){ int s=0; while(idx>0){ s+=bit[idx]; idx-= idx & -idx; } return s; } signed main(){ int n,q; cin>>n>>q; string s,t; cin>>s>>t; for(int i=1;i<=n;i++){ int c= (t[i-1]-s[i-1]+26)%26; if(n%2== i%2){ update(i,c); } else{ update(i,-c); } } if((find(n-1)%26+260+(t[n-1]-s[n-1]+26)%26)%26==0){ cout<<"da"; } else{ cout<<"ne"; } }
#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...