Submission #496335

# Submission time Handle Problem Language Result Execution time Memory
496335 2021-12-21T05:58:45 Z AQ0212 Nautilus (BOI19_nautilus) C++17
0 / 100
3 ms 204 KB
#include <iostream>
#include <algorithm>
#include <cmath>
#include <set>
#include <map>
#include <vector>
#include <string>
#include <sstream>
#include <cstring>

#define ll long long int
#define pb push_back
#define pf push_front
#define fi first
#define se second
#define all(x) x.begin(), x.end()

using namespace std;

ll inf2 = 3e18;

ll a[ 511 ][ 511 ], ans;
string s;



int main (){
    ll n, m, k;
	char c;

	cin >> n >> m >> k;

	for(int i = 1; i <= n; i ++){
		for(int j = 1; j <= m; j ++){
			cin >> c;
			if(c == '#')
				a[ i ][ j ] = 1;
		}
	}

	cin >> s;

	for(int i = 1; i <= n; i ++){
		for(int j = 1; j <= m; j ++){
			if(a[ i ][ j ])
				continue;
			ll x = i, y = j, ch = 0;
			for(int t = 0; t < k; t ++){
				if(s[ t ] == 'N' && x - 1 >= 0){
					if(!a[ x - 1 ][ y ])
						x --;
					else{
						ch ++;
						break;
					}
				}
				if(s[ t ] == 'S' && x + 1 <= n){
					if(!a[ x + 1 ][ y ])
						x ++;
					else{
						ch ++;
						break;
					}
				}
				if(s[ t ] == 'W' && y - 1 >= 0){
					if(!a[ x ][ y - 1 ])
						y --;
					else{
						ch ++;
						break;
					}
				}
				if(s[ t ] == 'E' && y + 1 <= m){
					if(!a[ x ][ y + 1 ])
						y ++;
					else{
						ch ++;
						break;
					}
				}
			}

			if(!ch)
				ans ++;
		}
	}

	cout << ans;
}


# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -