#include <bits/stdc++.h>
#define int long long
using namespace std;
bool seen[26][26][26][26][26];
signed main(){
int n, q;
cin >> n >> q;
assert(n == 5);
string a;
cin >> a;
string b;
cin >> b;
queue<string> que;
que.push(a);
while(!que.empty()) {
string s = que.front();
que.pop();
if(s == b) {
cout<<"da\n";
return 0;
}
if(!seen[s[0]-'a'][s[1]-'a'][s[2]-'a'][s[3]-'a'][s[4]-'a']) {
seen[s[0]-'a'][s[1]-'a'][s[2]-'a'][s[3]-'a'][s[4]-'a'] = true;
s[0]++;
s[1]++;
if(s[0] == 'z' + 1) s[0] = 'a';
if(s[1] == 'z' + 1) s[1] = 'a';
que.push(s);
s[0]--;
s[2]++;
if(s[0] == 'a'-1) s[0] = 'z';
if(s[2] == 'z' + 1) s[2] = 'a';
que.push(s);
s[1]--;
s[3]++;
if(s[1] == 'a'-1) s[1] = 'z';
if(s[3] == 'z' + 1) s[3] = 'a';
que.push(s);
s[2]--;
s[4]++;
if(s[2] == 'a'-1) s[2] = 'z';
if(s[4] == 'z' + 1) s[4] = 'a';
que.push(s);
}
}
cout<<"ne\n";
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... |