This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int char_diff(char a,char b){
int index_a=int(a)-int('a');
int index_b=int(b)-int('a');
int diff=(index_b-index_a+26)%26;
return diff;
}
void solve() {
int n,q;
cin>>n>>q;
string s;
cin>>s;
string t;
cin>>t;
int sign[n];
int value[n];
sign[n-1]=1;
for(int i=n-2;i>=0;i--){
sign[i]=-1*sign[i+1];
}
int c=0;
for(int i=0;i<n;i++){
value[i]=char_diff(s[i],t[i]);
c+=value[i]*sign[i];
}
c=c%26;
if(c==0)
cout<<"da"<<'\n';
else
cout<<"ne"<<'\n';
while(q--){
int pos;
char ch;
cin>>pos>>ch;
pos--;
s[pos]=ch;
c-=value[pos]*sign[pos];
value[pos]=char_diff(s[pos],t[pos]);
c+=value[pos]*sign[pos];
c=c%26;
if(c==0)
cout<<"da"<<'\n';
else
cout<<"ne"<<'\n';
}
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
//file();
solve();
return 0;
}
# | 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... |