func_code_string: #include <bits/stdc++.h>   #pragma comment(linker,  /STACK:16777216 )   using namespace std;   int n, k;   char g[3][100005];   bool f;   bool isval(int i, int j) {     if (j >= n) return true;     if (j < 0) return false;     if (g[i][j] ==  X ) return false;     return true;   }   void dfs(int i, int j, int t) {     if (j >= n)       f = true;     else {       g[i][j] =  X ;       if (j + k > t && isval((i + 1) % 2, j + k))         dfs((i + 1) % 2, (j + k), t + 1);       if (j + 1 > t && isval(i, j + 1)) dfs(i, j + 1, t + 1);       if (j - 1 > t && isval(i, j - 1)) dfs(i, (j - 1), t + 1);     }   }   int main() {     cin >> n >> k;     for (int i = 0; i < 2; i++) cin >> g[i];     f = 0;     dfs(0, 0, 0);     if (!f)       cout <<  NO  << endl;     else       cout <<  YES  << endl;     return 0;   }   