Submission #507353

#TimeUsernameProblemLanguageResultExecution timeMemory
507353MurotYNautilus (BOI19_nautilus)C++14
0 / 100
4 ms6476 KiB
#include<bits/stdc++.h> #define ios ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define ll long long #define ff first #define ss second using namespace std; const int N=2*1e5+7; string a[N]; int n, m, q; ll ans=0; string s; void rec(ll x, ll y, ll pos){ if (x >= n || x < 0 || y >= m || y < 0 || a[x][y] == '#') return ; // cout << x <<" " << y <<" " << pos <<" " << q <<"\n"; if (pos >= q) { ans++; return ; } if (s[pos] == 'N') rec(x-1, y, pos+1); if (s[pos] == 'E') rec(x, y+1, pos+1); if (s[pos] == 'W') rec(x, y-1, pos+1); if (s[pos] == 'S') rec(x+1, y, pos+1); return ; } int main() { cin >> n >> m >> q; for (int i=0;i<n;i++) cin >> a[i]; cin >> s; for (int i=0;i<n;i++){ for (int j=0;j<m;j++){ if (a[i][j] != '#'){ if (i == 0 and j == 1) rec(i, j, 0); } } } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...