QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#335437 | #4079. 칠하기 | bachbeo2007 | 100 ✓ | 169ms | 112576kb | C++20 | 2.2kb | 2024-02-23 13:30:21 | 2024-02-23 13:30:21 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
int dx[]={0,-1,0,1},
dy[]={-1,0,1,0};
int N,M,cnt;
vector<string> C;
vector<vector<int>> id[2];
bool cc(int x,int y){
return (x<0 || y<0 || x>=N || y>=M || C[x][y]=='#');
}
int yellowblue(int _N, int _M, vector<string> _C)
{
N=_N;M=_M;C=_C;
for(int k=0;k<=1;k++){
id[k].assign(N,vector<int>(M,-1));
for(int i=0;i<N;i++) for(int j=0;j<M;j++) if(C[i][j]=='.'){
if(cc(i+dx[k],j+dy[k])) id[k][i][j]=cnt++;
else id[k][i][j]=id[k][i+dx[k]][j+dy[k]];
}
}
vector<vector<int>> edge(cnt);
for(int i=0;i<N;i++) for(int j=0;j<M;j++) if(C[i][j]=='.'){
for(int k=0;k<=1;k++){
if(cc(i+dx[k],j+dy[k]) || cc(i+dx[k+2],j+dy[k+2])){
edge[id[k][i][j]].push_back(id[k^1][i][j]);
}
}
}
vector<bool> vis(cnt,false);
vector<int> order;
function<void(int)> dfs = [&](int u){
vis[u]=true;
for(int v:edge[u]) if(!vis[v]) dfs(v);
order.push_back(u);
};
for(int i=0;i<cnt;i++) if(!vis[i]) dfs(i);
int num=0;
vector<int> scc(cnt,-1);
vector<vector<int>> rev_edge(cnt);
for(int i=0;i<cnt;i++) for(int v:edge[i]) rev_edge[v].push_back(i);
function<void(int)> dfs2 = [&](int u){
scc[u]=num;
for(int v:rev_edge[u]) if(scc[v]==-1) dfs2(v);
};
for(int i=0;i<cnt;i++){
int u=order[cnt-i-1];
if(scc[u]==-1){
dfs2(u);
num++;
}
}
vector<vector<int>> scc_edge(num);
for(int i=0;i<cnt;i++) for(int v:edge[i]) if(scc[i]!=scc[v]) scc_edge[scc[i]].push_back(scc[v]);
vis.assign(num,false);
order.clear();
function<void(int)> dfs3 = [&](int u){
vis[u]=true;
for(int v:scc_edge[u]) if(!vis[v]) dfs3(v);
order.push_back(u);
};
for(int i=0;i<num;i++) if(!vis[i]) dfs3(i);
reverse(order.begin(),order.end());
for(int i=0;i<(int)order.size()-1;i++){
bool check=false;
for(int v:scc_edge[order[i]]) if(order[i+1]==v) check=true;
if(!check) return 0;
}
return 1;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 30
Accepted
Test #1:
score: 30
Accepted
time: 0ms
memory: 3644kb
input:
3 5 ...## ....# #.#..
output:
1
result:
ok single line: '1'
Test #2:
score: 0
Accepted
time: 0ms
memory: 3580kb
input:
4 4 ..#. #... ...# .#..
output:
1
result:
ok single line: '1'
Test #3:
score: 0
Accepted
time: 0ms
memory: 3640kb
input:
15 15 #######..###### ######....##### #####......#### ####........### ###..........## ##............# #.............. ............... #.............# ##...........## ###.........### ####.......#### #####.....##### ######...###### #######.#######
output:
1
result:
ok single line: '1'
Test #4:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
16 16 ########..###### #######....##### ######......#### #####........### ####..........## ###............# ##.............. ................ ##.............# ###...........## ####.........### #####.......#### ######.....##### #######...###### ########.####### ########.#######
output:
0
result:
ok single line: '0'
Test #5:
score: 0
Accepted
time: 0ms
memory: 3760kb
input:
15 16 ########..###### #######....##### ######......#### #####........### ####..........## ###............# ##.............. ................ ##.............# ###...........## ####.........### #####.......#### ######.....##### #######...###### ########.#######
output:
1
result:
ok single line: '1'
Test #6:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
10 10 ..#...#... ...#...#.. .#...#...# #...#...#. ..#...#... ...#...#.. .#...#...# #...#...#. ..#...#... ...#...#..
output:
1
result:
ok single line: '1'
Test #7:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
10 10 ..#...#... ...#...#.. .#..#....# #.......#. .......#.. ..#....... .#.......# #....#..#. ..#...#... ...#...#..
output:
1
result:
ok single line: '1'
Test #8:
score: 0
Accepted
time: 0ms
memory: 3904kb
input:
20 20 ..#...#...#...#...#. #..#...#...#...#.... ....#...#...#...#..# ..#..#...#...#....#. .#....#...#...#..#.. #...#..#...#....#... ...#....#...#..#...# ..#...#..#....#...#. .#...#....#..#...#.. #...#...#...#...#... ...#...#...#...#...# ..#...#..#....#...#. .#...#....#..#...#.. #...#..#...#....#... ...
output:
0
result:
ok single line: '0'
Test #9:
score: 0
Accepted
time: 0ms
memory: 3656kb
input:
10 16 ..#..#..#..#..#. #..#..#..#..#... .#..#..#..#....# ..#..#..#....#.. #..#..#....#..#. .#..#....#..#..# ..#....#..#..#.. #....#..#..#..#. ...#..#..#..#..# .#..#..#..#..#..
output:
1
result:
ok single line: '1'
Test #10:
score: 0
Accepted
time: 1ms
memory: 3848kb
input:
50 45 ..#...##..##...#...#.#.#.....#..#..##..##.#.. ...#.#.#.#..##...###.#..##.##.#.....#......#. #......#.##.##....#.....#......#.#.#.#...#... .#.#####....##.#.#..###..#.##.###..#...#....# .....#.#.##.#..#..#...#.##...##..#...#....##. .#..#.....##..###...##....##..#...#.##.###... ..#.#.#.#..#.##.#....
output:
0
result:
ok single line: '0'
Test #11:
score: 0
Accepted
time: 1ms
memory: 3760kb
input:
50 45 .....#...#.#..#........#.........#..........# ...##.......#...##...#..#...###.....##...#..# .#...#...#....#....#...#.......#...#..##...#. ......#.......#.#.#.......#..#.#.#....#...... #..#..#.....#.#.......#.#..#..#...#.#....#... .#.#....#.#...#.#...#...#.#....#........#.#.. .....##..#...##.#....
output:
0
result:
ok single line: '0'
Test #12:
score: 0
Accepted
time: 1ms
memory: 3740kb
input:
50 50 .#.......###....#.#..#....#....#...#..##....#.#.#. ............#.................#......##........... ......................................#........... .......................................##......... ...........#...#.................................# #......#.....#..#.........#...............
output:
0
result:
ok single line: '0'
Test #13:
score: 0
Accepted
time: 1ms
memory: 3656kb
input:
50 50 ###...###..#.##..###...#..#...###....#..#.#.##.### #....#.#......#........##......#............##.... .....#..................#........................# ...#.............................................. #................................................# #.........................................
output:
0
result:
ok single line: '0'
Test #14:
score: 0
Accepted
time: 1ms
memory: 3720kb
input:
50 50 ###.####...#.#...###...##.#...###....#..#.#.##.### #...##.#......#........##.....##............##...# ....##..................#...................#..... ...#................#............................. #................................................# #.........................................
output:
0
result:
ok single line: '0'
Test #15:
score: 0
Accepted
time: 0ms
memory: 3964kb
input:
50 50 ###..###...#.##..###...####...###....#..#.#.##.### #....#.#......#........##......#............##.... ....##..................#...................#....# ...#................#............................. #................................................# #.........................................
output:
0
result:
ok single line: '0'
Test #16:
score: 0
Accepted
time: 1ms
memory: 3616kb
input:
50 50 #.#.#.....###..#...#..###.#.....#..###.##.#.#...#. #........###......#....#.......##......##....#.... ........##......#.....#........#.......#.......... .........#...........#................##.......... #..............#.................................# .....#..................#.................
output:
0
result:
ok single line: '0'
Test #17:
score: 0
Accepted
time: 1ms
memory: 3672kb
input:
50 50 #.#.#....####..#...#.####.#.#...#.##.#.##.#.#...#. #........###......#...##.......##......##....#.... ........##......#.....#........#.......#.......... .........#...........#................##.......... #..............#.................................# .....#..................#.................
output:
0
result:
ok single line: '0'
Test #18:
score: 0
Accepted
time: 1ms
memory: 3664kb
input:
50 50 #.#.#....####..#..##.####.#.#...#.##.#.##.#.#...#. #........###......#..###.......##.......#....#.... ........##......#.....#........#.......#.......... .........#...........#................##.......... #..............#.................................# .....#..................#.................
output:
0
result:
ok single line: '0'
Test #19:
score: 0
Accepted
time: 0ms
memory: 3668kb
input:
50 50 .#.###..#...#..#...##.#..##..#....#..#..##..#..#.. .....#......#.....#.#...................#........# #.........#.......#......................#........ ##..............#................................. .....#......................#....................# #.....#...................................
output:
0
result:
ok single line: '0'
Test #20:
score: 0
Accepted
time: 1ms
memory: 3732kb
input:
50 50 ##...#..#..###.#...##.#...#..#....#..#...#.##..#.. .....#....#.#.....#.#...................#........# #.........#.......#......................#........ #...............#................................. #................................................# ##........................................
output:
0
result:
ok single line: '0'
Test #21:
score: 0
Accepted
time: 1ms
memory: 3676kb
input:
50 50 .#.....#.#.#.#..##.#..#.###....##.###.##.###..#.## ..##..#........##....#..#..#...#......#..#.......# #..##.........#..........#..#..###...###..#.....## #.......#...##.#..###..#...#.#..###...#...##.#.... .......#.##....#.##...#...##...#.....#.....##..... #.........##..#.##.#.....#.#....#.........
output:
0
result:
ok single line: '0'
Test #22:
score: 0
Accepted
time: 1ms
memory: 3776kb
input:
50 50 ##.....##...###.##.....##..#..####.#.#..##..#..##. ...#...####..#..###...#.#..#..##...#..#..##...##.. ##..#..#....##..##..#....#...###.....#..###....... .#....#.#....##....##.......#.#.....#....#......## .....#.......#....#........#.....#...#...#.......# .........#..#.#.#..#....#.#..#........#...
output:
0
result:
ok single line: '0'
Test #23:
score: 0
Accepted
time: 1ms
memory: 3760kb
input:
50 50 ##......#...###.##.....##.##...####..##.#...#..##. ...#...##.#..##..##...##........#..#..#..##...##.. ##..##.#.#..###...###....#...###.........##......# ##....#..#....#....#.#..#...#..#..#.....##......#. .....#.#......#...##...#...#..#..#..##...#........ ............#..##..#..#.###..#....#...#...
output:
0
result:
ok single line: '0'
Test #24:
score: 0
Accepted
time: 1ms
memory: 3912kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#...#...#...#.. .#...#...#...#...#...#...#...#...#...#...#...#...# #...#...#...#...#...#...#...#...#...#...#...#...#. ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#......
output:
0
result:
ok single line: '0'
Test #25:
score: 0
Accepted
time: 1ms
memory: 3920kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#...#...#...#.. .#...#...#...#...#...#...#...#...#...#...#...#...# #...#...#...#...#...#...#...#...#...#...#...#...#. ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#......
output:
1
result:
ok single line: '1'
Test #26:
score: 0
Accepted
time: 0ms
memory: 4128kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#.....#.#...#...#.. .#...#...#...#...#...#...#...#...#...#...#...#...# #.#.....#...#.#.....#...#...#...##..#...#...#...#. ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#......
output:
1
result:
ok single line: '1'
Test #27:
score: 0
Accepted
time: 1ms
memory: 4076kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... .......#...#...#...#...#...#...#...#...#...#...#.. .#...#...#...#...#...#...#...#...#...#...#...#...# #...#...#...#...#...#...#...#...#...#...#...#...#. ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#......
output:
1
result:
ok single line: '1'
Test #28:
score: 0
Accepted
time: 1ms
memory: 3924kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#...#...#...#.. .#...#...#...#...#...#...#...#...#...#...#...#...# #...#...#...#...#...#...#...#...#...#...#...#...#. ..#...#...#...#...#...#...#...#...#...#...#...#... ...#...#...#...#...#...#...#...#...#......
output:
1
result:
ok single line: '1'
Test #29:
score: 0
Accepted
time: 1ms
memory: 4112kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...........#...........#...#...#...#...#...#...#.. .....#...............#...##..#...#...#...#...#...# #...#...............#...#...#...#...#...#.......#. .#..........#.........#.......#...#...#...#.#..... ...........#...#...#...#...#...#...#......
output:
1
result:
ok single line: '1'
Test #30:
score: 0
Accepted
time: 1ms
memory: 3848kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#.....#....#......#.....#...#.....#...#...#.... .#..##.......#...........##..#.....#.#......##.... #.#..##...##.#......#..#.#..#...#...#......#.....# ..#....##...#..#......#.#.....#.#.#..#..#...#...#. ......#....#..#....#..#....#...#.#.#..#...
output:
1
result:
ok single line: '1'
Test #31:
score: 0
Accepted
time: 0ms
memory: 3688kb
input:
50 50 #########################.######################## ########################...####################### #######################.....###################### ######################.......##################### #####################.........#################### ####################...........########...
output:
0
result:
ok single line: '0'
Test #32:
score: 0
Accepted
time: 0ms
memory: 3920kb
input:
50 50 #########################.######################## ########################...####################### #######################.....###################### ######################.......##################### #####################.........#################### ####################...........########...
output:
1
result:
ok single line: '1'
Test #33:
score: 0
Accepted
time: 1ms
memory: 3912kb
input:
50 50 ...........##############.############............ ...........#############...###########............ ...........############.....##########............ ...........###########.......#########............ ...........##########.........########............ ...........#########...........#######....
output:
0
result:
ok single line: '0'
Test #34:
score: 0
Accepted
time: 0ms
memory: 3688kb
input:
50 50 #########################.######################## #######..###############...####################### ######....#############.....###################### #####......###########.......##################### ####........#########.........#################### ###.........########...........########...
output:
0
result:
ok single line: '0'
Test #35:
score: 0
Accepted
time: 1ms
memory: 3780kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... .......#..##.....#.......#....##...#......#......# .#...#...#...#.....#....#....#...#.....#.....#.... #.......#...#......#...#..#..##.......#.....#..... ......##.###........#.#....##.##..#........##....# ....##...#........#.##...##....##....#....
output:
0
result:
ok single line: '0'
Test #36:
score: 0
Accepted
time: 1ms
memory: 3796kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#..##...#.....#...#.#..#...#..............#...# .#...#...###.#.....##....#...#...#...........#.... #.#.....#...#.......##.....#.#.#.........#.....#.. .......#...#.........#....#.#.#.............#...#. ....##...#........#.....#.#....##....#....
output:
1
result:
ok single line: '1'
Test #37:
score: 0
Accepted
time: 1ms
memory: 3948kb
input:
50 50 ..#...#...#...#...#...#...#...#...#...#...#...#... ...#..##...#.....#...#.#..#...#..............#...# .#...#.#....##.....##....#...#...#...........#.... #.#.....#...#........#.....#.#.#.........#........ .......#...#........##....#.#.#.............#..... ....##...#........##....#.#....##....#....
output:
1
result:
ok single line: '1'
Test #38:
score: 0
Accepted
time: 0ms
memory: 3536kb
input:
10 10 ..#...#... .......#.. .........# #.......#. ...#...... .......... .......#.. #......... ..#...#... ...##..#.#
output:
1
result:
ok single line: '1'
Test #39:
score: 0
Accepted
time: 1ms
memory: 3996kb
input:
47 43 #########...#...#####...#...#####...#...### ##########.....#######.....#######.....#### #########.......#####.......#####.......### #########.......#####.......#####.......### ##########...#..######...#..######...#..### ###..#..#..#..#..#..#..#..#..#..#..#..#...# ####...#..######...#..######.....
output:
1
result:
ok single line: '1'
Subtask #2:
score: 70
Accepted
Dependency #1:
100%
Accepted
Test #40:
score: 70
Accepted
time: 49ms
memory: 59412kb
input:
983 991 #########...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#...#####...#......
output:
1
result:
ok single line: '1'
Test #41:
score: 0
Accepted
time: 19ms
memory: 15900kb
input:
1000 1000 ##################################################################################################################################################################################################################################################################################################...
output:
1
result:
ok single line: '1'
Test #42:
score: 0
Accepted
time: 15ms
memory: 15824kb
input:
1000 1000 ##################################################################################################################################################################################################################################################################################################...
output:
0
result:
ok single line: '0'
Test #43:
score: 0
Accepted
time: 105ms
memory: 112576kb
input:
998 998 ...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...
output:
1
result:
ok single line: '1'
Test #44:
score: 0
Accepted
time: 101ms
memory: 112244kb
input:
998 998 #..#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...
output:
0
result:
ok single line: '0'
Test #45:
score: 0
Accepted
time: 102ms
memory: 112452kb
input:
998 998 ...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...
output:
1
result:
ok single line: '1'
Test #46:
score: 0
Accepted
time: 99ms
memory: 112356kb
input:
998 998 ...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...#...
output:
1
result:
ok single line: '1'
Test #47:
score: 0
Accepted
time: 29ms
memory: 16160kb
input:
1000 1000 .....................................................................................................................................................................................................................................................................................................
output:
0
result:
ok single line: '0'
Test #48:
score: 0
Accepted
time: 33ms
memory: 18448kb
input:
1000 1000 .............................................................................................................................................................................#............................................................#..................#.......................................
output:
0
result:
ok single line: '0'
Test #49:
score: 0
Accepted
time: 93ms
memory: 40640kb
input:
1000 1000 .....#....#............................#...................#.###.........#.......#.#..#.......#................#.#............................#...#..............#.#........#.....#..........#.##.....#....#.......#.#...................##.........##...#.##.................#......#........#......
output:
0
result:
ok single line: '0'
Test #50:
score: 0
Accepted
time: 169ms
memory: 80152kb
input:
1000 1000 #.########......#.#....#...#..#...#.#............#..#..#.##.#.##.##...#..#...#..###....##.##.####....#....#.#.###....##.###.###...#.....#..##..##..#.#..#.###.###.#.#.....#.##........#...#.#...#.#.######.#...#.#.#..##.##.##........#.##..##...##.#####...#.####.#..#.#.##.....#....##....#.##.#...
output:
0
result:
ok single line: '0'