Submission #1284205

#TimeUsernameProblemLanguageResultExecution timeMemory
1284205muhammad-ahmadBliskost (COI23_bliskost)C++20
57 / 100
1095 ms4328 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long
#define endl '\n'

bool check(string a, string b){
	int n = a.size() - 1;
	int prev = 0;
	for (int i = 1; i < n; i++){
		a[i] = (97 + (a[i] - 'a' + prev) % 26);
		if (b[i] >= a[i]){
			prev = b[i] - a[i];
		}
		else{
			prev = b[i] - 'a' + 'z' - a[i] + 1;
		}
		a[i] = b[i];
	}
	a[n] = (97 + (a[n] - 'a' + prev) % 26);
	return (a == b);
}

void solve(){
	int n, q; cin >> n >> q;
	string s, t; cin >> s >> t;
	s = "." + s;
	t = "." + t;
	
	cout << (check(s, t) ? "da" : "ne") << endl;
	
	for (int Q = 1; Q <= q; Q++){
		int idx; char C;
		cin >> idx >> C;
		s[idx] = C;
		cout << (check(s, t) ? "da" : "ne") << endl;	
	}
	
}

signed main(){
	ios::sync_with_stdio();
	cin.tie(0); cout.tie(0);
	
	int tc = 1;
	// cin >> tc;
	
	for (int i = 1; i <= tc; i++){
		solve();
	}
}
#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...