#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n;
vector<vector<char>> a;
vector<ll> v;
ll dfs(ll x,ll y){
if(a[x][y]=='X')return 0;
if(y==n-1)return 1;
a[x][y]='X';
if(dfs(min(9LL,x+1),y+1)==1)return 1;
if(dfs(max(0LL,x-1),y+1)==1){
v.push_back(y);
return 1;
}
return 0;
}
signed main(){
cin>>n;
a.assign(10,vector<char>(n+1));
for(ll i=0;i<10;i++){
for(ll j=0;j<n;j++)
cin>>a[i][j];
}
dfs(9,0);
reverse(v.begin(),v.end());
cout<<v.size()<<"\n";
for(auto x:v)
cout<<x<<" "<<1<<"\n";
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |