QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#335437#4079. 칠하기bachbeo2007100 ✓169ms112576kbC++202.2kb2024-02-23 13:30:212024-02-23 13:30:21

Judging History

你现在查看的是最新测评结果

  • [2024-02-23 13:30:21]
  • 评测
  • 测评结果:100
  • 用时:169ms
  • 内存:112576kb
  • [2024-02-23 13:30:21]
  • 提交

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'