Submission #1294576

#TimeUsernameProblemLanguageResultExecution timeMemory
1294576azik21Nautilus (BOI19_nautilus)C++20
29 / 100
3 ms840 KiB
#include<iostream>
// #include<bits/stdc++.h>
#include<vector>
#include<map>
#include<set>
#include<queue>
#include<algorithm>
#define int long long
#define pb push_back
#define all(v) (v).begin() , (v).end()
using namespace std;
const int N = 3100;
signed main(){

    ios_base::sync_with_stdio(0) , cin.tie(0);
    int n ,m , sz;
    cin >> n >> m >> sz;
    int c[n+1][m+1];
    for(int i=1 ; i <= n ; i++){
        for(int j = 1 ; j <= m ; j++){
            char x ;
            cin >> x ;
            c[i][j] = 0 ;
            if(x == '.')c[i][j] = 1 ;
        }
    } 
    string s ;
    cin >> s ;
    set<pair<int , int >>st;
    for(int i= 1; i<= n ; i++){
        for(int j = 1 ; j <= m ; j++){
            if(c[i][j]==0)continue;
            int x = i , y = j , ok =1 ;
            for(auto it:s){
                if(it =='N')x--;
                if(it == 'S')x++;
                if(it == 'E')y++;
                if(it == 'W')y--;
                if(x < 1 || x > n || y > m || y < 1 || c[x][y]==0){
                    ok = 0 ;
                    break;
                }
            }
            if(ok)st.insert({x , y });
        }
    }   
    cout << st.size();
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...