QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#471741 | #5485. MazeMan | Kerollos# | WA | 59ms | 4636kb | C++17 | 2.3kb | 2024-07-11 06:11:34 | 2024-07-11 06:11:34 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 105;
int reach[N][N][26];
bool vis[N][N];
int dx[] = {1, -1, 0, 0};
int dy[] = {0, 0, 1, -1};
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
int n, m;
cin >> n >> m;
vector<string> grid(n);
cin.ignore();
for (int i = 0; i < n; i++){
getline(cin, grid[i]);
}
vector<int> ans(26);
auto check = [&](int i, int j){
return i >= 0 && i < n && j >= 0 && j < m && (grid[i][j] == '.' || grid[i][j] == ' ');
};
auto BFS = [&](int sti, int stj){
char c = grid[sti][stj] - 'A';
queue<pair<int, int>> q;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++) vis[i][j] = 0;
q.push({sti, stj});
while (q.size()){
auto [x, y] = q.front();
q.pop();
for (int d = 0; d < 4; d++){
int nxtX = x + dx[d], nxtY = y + dy[d];
if (check(nxtX, nxtY) && !vis[nxtX][nxtY]){
q.push({nxtX, nxtY});
vis[nxtX][nxtY] = 1;
if (grid[nxtX][nxtY] == '.'){
ans[c]++, reach[nxtX][nxtY][c] = 1;
}
}
}
}
};
int tot = 0;
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
if (grid[i][j] >= 'A' && grid[i][j] <= 'W') {
BFS(i, j);
}
else if (grid[i][j] == '.') tot++;
}
}
for (char a = 0; a < 23; a++){
for (char b = 0; b < a; b++){
bool same = 1;
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
if (reach[i][j][a] != reach[i][j][b]){
same = 0;
break;
}
}
if (!same) break;
}
if (same){
assert(ans[a] == ans[b]);
ans[a] = 0;
break;
}
}
}
int can = 0, cnt = 0;
for (int i = 0; i < 23; i++){
if (ans[i]) can += ans[i], cnt++;
}
cout << cnt << ' ' << tot - can;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3696kb
input:
10 20 XXXXXXXAXXXXXXXBXXXX X.. ..X.X...... ...X X.XXX...X.X.XXXXXX.X X.X.XXXXX.X.X....X.X X.X... ...X.X.XX.X.X X.X.X.XXXXXXX.XX.X.X X.X.X.X...X...X....X X.X.X.XXXXXXX.XXXX.X X...X.X X.. ..X..X.X XXXXXXXDXXXXXXXXCXXX
output:
2 3
result:
ok 2 number(s): "2 3"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3660kb
input:
3 5 XDRVX X.X.X XXXXX
output:
2 0
result:
ok 2 number(s): "2 0"
Test #3:
score: 0
Accepted
time: 0ms
memory: 3556kb
input:
3 5 NAQXX X X.X XXXXX
output:
0 1
result:
ok 2 number(s): "0 1"
Test #4:
score: 0
Accepted
time: 0ms
memory: 3572kb
input:
10 68 XXXXXXPXXXXXXXXCXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXIXXRXXXXXXXXXKXXX X.XX..XXXX.X.X.XXXXXX..XXXXX.X.X......X ......X.X.. X.....XXX.. X.X X X.X.XXX.. X..X..X ..X..XX.XX.XXXXX.X....X.X.X.XXXX.X. X..X.X.....X X.X..XX .XX..X....X.XX.X..XXX....X.X. .X....X.X .XX.X...X.XXX.. X..X X.X..X..XXXXXX .. ...
output:
4 116
result:
ok 2 number(s): "4 116"
Test #5:
score: 0
Accepted
time: 0ms
memory: 3832kb
input:
7 4 WIRX VX.S OXXN XX E K..B T.XQ CMDL
output:
2 0
result:
ok 2 number(s): "2 0"
Test #6:
score: 0
Accepted
time: 0ms
memory: 3628kb
input:
14 65 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X...... .XXX..X.X. ..XXX.XXX XX.X.X.XX .X.XXX..X.XX..XXXX....X .X XXX..X.XXXXXXX..X.X....XX...XXX..XXX..XX....X...X.......X..X.XXXX X.X.X......XXX .....XX. ...XX...X.X.XXX...X.....X.X.XX.XX ..X X X X...........X.....X X...XXX.XX...
output:
1 318
result:
ok 2 number(s): "1 318"
Test #7:
score: 0
Accepted
time: 0ms
memory: 3644kb
input:
42 20 XAXXXXXXXXXXXXXXXXNX X..X.XX.XX....XX.XXX XX.XXX X....XXX...V X......XX...XXXXX..X X....XX....X.XX....X JX.XX XXX.XX..XX.XXX X. ..XXX....XXX...XX XX.... .XXX.XX..X.XX X.X.....XX.X..X .X.X X.X. ....XX.....XX.X X X..X...X.XXXXXX..X X.......XX.X..X.XXXX X..XX...XX......XXXX XX.XX..X ...X...XX.X ...
output:
3 258
result:
ok 2 number(s): "3 258"
Test #8:
score: 0
Accepted
time: 1ms
memory: 3600kb
input:
45 86 XXXXXXXXXXXXXXXXXXXXXXXXXXEXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX.X..XXXX.. XX.XX.X.X..XX....XX..X.X.X.XX.....X.X.X. ..X..XX.XX.XX.XX..X..X....XXX.X XX...XX...XXX.XX.XXXX. XX....X. XXX....XXXXX...X.X.XXX.......XXX.X..XX...X.X..X..XX.XX X XX...X.XX..XX. X...X..... .X..X...
output:
1 1791
result:
ok 2 number(s): "1 1791"
Test #9:
score: 0
Accepted
time: 0ms
memory: 3704kb
input:
35 47 XXXXXXXXXOXXXXXXXXHSXXXXXXXXNXXXXXXXXXXMXXXXXXX X.X.XXX..XXXX.....X . X........X X..XX.XX..XQ X.XXXX XX..X.....X..X....XX. XX..X..X.XX..XXX.X X.XX..X....XX.XXX. X..XXX.XX.X..X.X.X.XX.X.X..X X.X...XXX.X..X..XX X..X.. XXX..X XX.XXX..X.X..P XXX.X..X... XX.......X XX.X X...X.. ..XX.X...X X.X.XX...
output:
6 463
result:
ok 2 number(s): "6 463"
Test #10:
score: 0
Accepted
time: 1ms
memory: 3804kb
input:
68 83 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXX X.X..XXX...X.XX.XX.......XXX .XXX .XX.......... .XXXX...XX..X.....XX.X.......X.XX.X XXX.XX. XXXX.XXXX..X..XXX..X..XXXX XX.X.X.X.......XX.XXXX.XXX.. .X....X. .X.X.XX.X X.XXXXX.. ...X.....XX.X...XX...X....XXX.XX...
output:
7 2439
result:
ok 2 number(s): "7 2439"
Test #11:
score: 0
Accepted
time: 1ms
memory: 4028kb
input:
44 49 XXXXJXIXXXXXXXXXXXXXXXXFXXXXXXXXXXXXXXXXXXXXXXXXX X.... X......X ... X.X. XXX..XXX.XX..XXXX...XX..X X.X..XXX....XXXX...X.X.X.XX. ...XXXX.X.XXX.X. .X XX...X .X..X.X. X.. .X XXXX.XX.X... X.XXXX....XXX X..X.X......X.XX.XXX.X...XXX..X .X.XX.X...XX..XXX X X XXX.X....XX..XXX.XX.XX.X.XXXXXXXXX...X.X...
output:
5 807
result:
ok 2 number(s): "5 807"
Test #12:
score: 0
Accepted
time: 0ms
memory: 3748kb
input:
89 61 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXLXXXXXXXXXXXXXXXXXXXXXXXX X.X X.X..X..XX.X..XXX.X.X.XXX.XXX.XX. X.X.....XX..X.XX.....XX X.X..X.XX.X.XXXXXX...X.... .XX. XXXXXXX..X...XXX..XXXX..XX.XX XXXXXX..XX.......XXXX.X...X....XX..X..X.XX.XX.XX...XXXX ..X.X X.X.XX.XX.X.. .... ..XX. .XXXX..X....X ..X.X.....
output:
8 2394
result:
ok 2 number(s): "8 2394"
Test #13:
score: 0
Accepted
time: 0ms
memory: 3868kb
input:
3 3 XAX X.X XXX
output:
1 0
result:
ok 2 number(s): "1 0"
Test #14:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
3 3 XAX X X XXX
output:
0 0
result:
ok 2 number(s): "0 0"
Test #15:
score: 0
Accepted
time: 0ms
memory: 3552kb
input:
3 3 XXX X.X XXX
output:
0 1
result:
ok 2 number(s): "0 1"
Test #16:
score: 0
Accepted
time: 0ms
memory: 3996kb
input:
94 5 XXXXX X..XX XXXXH X.X.X X.X.X X..XX X..XX X.. X X.X.X X.XXX L.XXX X.X.X XXX.P X...X XXXXX XXX X XX.XX X.XXX NX.XX X...X X.X.X X.XXX X..XX XXX.X XX.XX XX..X XXXXC XX..X X.XXX X..XX X..XX X...X X...X X..XX XX.XX X. XX XX..X XX..X X ..J X.. X X..XX X.XXX XXXXX X...X XX..X X.XXX Q ..X XX.XX XXXXX X...
output:
8 59
result:
ok 2 number(s): "8 59"
Test #17:
score: 0
Accepted
time: 0ms
memory: 3940kb
input:
15 40 XXXXXXXXTXXXXXXXXXXXXXXXXXXNXXXIXXXXXKXX X.X.. .X..X.X.. ..X...XX....X.X.XX....XX XXX.......X.XXX. XXX.X....XXXX..XX.X...X X.X.X.X...X. XX.X..XX.XX.. .X.XXX..XXXXX XXX....XXXXX.XX.X.XXX.X.X.......X.XXXX.X XX.XX... XX...XX.X......X..X.X X.X.X...X XX..X.X....XXX.X.XX.XX.X...XXX.X.XXX.X.X X.X..X....
output:
7 80
result:
ok 2 number(s): "7 80"
Test #18:
score: 0
Accepted
time: 0ms
memory: 3888kb
input:
12 100 XSXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXMXXXXXXXXXXX XXXX.X..X..X.XXXX..X..XXXXXXXX....X X.XX..XXXXXXXXXXX X..XXXX.X..X....X.X ..X...XX.X..XX XX.XX..X.XX X..X X..X...X.XXX......XXX...X.X.XXX...X....X.XXXX. X... ...X.X.XX .XXXXXXXXX .X..X...X XX....
output:
1 477
result:
ok 2 number(s): "1 477"
Test #19:
score: 0
Accepted
time: 1ms
memory: 3972kb
input:
99 48 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXSCXXXXXXX XX.XX...XX..XXX.X.X.X X.. .XXX.X......XXX.X..X.X X. XX.XXX.X....X.X..XXX.XXXXXXXX.X.X..XX...X..XX X..XXXXX..XXXXX.X..X..XX..X..X..XXX.. .X...XXX.X XXX...XXXX..X..X..X..X .X.XXXX...XX.XX..XXX X.XX XX.....X.X...XXX.......X.XX....... ....XX.X..X.X ...
output:
7 1776
result:
ok 2 number(s): "7 1776"
Test #20:
score: 0
Accepted
time: 1ms
memory: 4320kb
input:
86 79 XXXXXXXXXXXXXXXXXXXXXXXXFXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXPXXQXTI X.X...X.XXX. ..X.XX.X....XX. .X..X..X.X..X...X.....XX. .X.X..X.XX..X XXXXX.XXX X.XXXX....X.X...X.X. .X..............X ...X. ....X... ...X..XXX .... X..XX....A XX.X.XX.X X.XXX.XXX.XXX.XX..XX..X.X X.XXXX.XXXX.XXXXXX...
output:
7 2607
result:
ok 2 number(s): "7 2607"
Test #21:
score: 0
Accepted
time: 1ms
memory: 3748kb
input:
32 62 XXJXXXXXXXXXXXXTXXXXEXXXXXXXXXXXXXXXXXXXXXXRXCXXXXXVXXXXXXXXXX MXX...XXX.XX..X..XX.. XX.XX.XX.XX.XXX..X.XX.X.XXX..X....X...XX X........X....X.X..X.XXX..X.XX.X.XXX.XXXX...XX..XX..X.XX.X.X.X U.XXXXXXX..XXX.XXXXXXXXX.X.XXXX......X.X..XXX.. .X..X..X.XXX.X X.X X..X.XX. ..X..XXX..XXXXX..X.X..XXXXXX...
output:
11 566
result:
ok 2 number(s): "11 566"
Test #22:
score: 0
Accepted
time: 1ms
memory: 4572kb
input:
100 100 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X..................................................................................................X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...
output:
1 0
result:
ok 2 number(s): "1 0"
Test #23:
score: 0
Accepted
time: 1ms
memory: 3632kb
input:
100 100 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.XX XX.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X...
output:
0 4802
result:
ok 2 number(s): "0 4802"
Test #24:
score: 0
Accepted
time: 0ms
memory: 3652kb
input:
100 100 AXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXB X..................................................................................................X X............................................................................................
output:
0 9604
result:
ok 2 number(s): "0 9604"
Test #25:
score: 0
Accepted
time: 4ms
memory: 4636kb
input:
100 100 XXXXXXXXXXXXXBXXXXXXXXXXXXXXXXSXXXXXXXXXXXXXXXXFXXXXXXXXXXXXXUXXXXXXXXXXXXXXXGXXXXXXXXXXXTXXXXXXXXXA X..................................................................................................X X............................................................................................
output:
1 0
result:
ok 2 number(s): "1 0"
Test #26:
score: 0
Accepted
time: 1ms
memory: 4636kb
input:
100 100 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X..................................................................................................X X............................................................................................
output:
1 0
result:
ok 2 number(s): "1 0"
Test #27:
score: -100
Wrong Answer
time: 59ms
memory: 4636kb
input:
100 100 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA A..................................................................................................A A............................................................................................
output:
1 -3755164
result:
wrong answer 2nd numbers differ - expected: '0', found: '-3755164'