QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#72231#4788. GravitylmeowdnML 194ms254656kbC++201.6kb2023-01-15 10:29:452023-01-15 10:29:49

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-01-15 10:29:49]
  • 评测
  • 测评结果:ML
  • 用时:194ms
  • 内存:254656kb
  • [2023-01-15 10:29:45]
  • 提交

answer

#include<bits/stdc++.h>
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define per(i,a,b) for(int i=(a);i>=(b);i--)
#define fi first
#define se second
#define eb emplace_back
#define bp __builtin_parity
#define y1 yyl
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
typedef vector<int> vi;
typedef vector<pii> vp;
typedef bitset<1009> bset;

int read() {
	int x=0,w=1; char c=getchar();
	while(!isdigit(c)) {if(c=='-') w=-1; c=getchar();}
	while(isdigit(c)) {x=x*10+c-'0'; c=getchar();}
	return x*w;
}

const int N=2009,inf=0x3f3f3f3f;
int n,m,id[N][N],tot;
vp e[N*N];
vi f;
bitset<N*N>vst;
char s[N][N],ans[N][N];
priority_queue<pii>q;

void dfs(int x,int y,int p) {
	if(!x||!y||x>n||y>m||s[x][y]!='#'||id[x][y]) return;
	id[x][y]=p;
	dfs(x+1,y,p), dfs(x,y+1,p), dfs(x-1,y,p), dfs(x,y-1,p);
}

signed main() {
	n=read(), m=read();
	rep(i,1,n) scanf("%s",s[i]+1);
	rep(i,1,n) rep(j,1,m) if(s[i][j]=='#'&&!id[i][j]) dfs(i,j,++tot);
	++tot;
	rep(j,1,m) id[n+1][j]=tot;
	f.resize(tot+1);
	rep(j,1,m) {
		int lst=n+1;
		per(i,n,1) if(s[i][j]=='#') {
			if(id[lst][j]!=id[i][j]) {
				e[id[lst][j]].eb(pii(id[i][j],lst-i-1));
			}
			lst=i;
		}
	}
	rep(i,1,tot-1) f[i]=inf;
	q.push(pii(0,tot));
	while(q.size()) {
		int u=q.top().se; q.pop(); 
		if(vst[u]) continue; vst[u]=1;
		for(pii ed:e[u]) {
			if(f[ed.fi]>f[u]+ed.se)
				f[ed.fi]=f[u]+ed.se, q.push(pii(-f[ed.fi],ed.fi));
		}
	}
	rep(i,1,n) rep(j,1,m) ans[i][j]='.';
	rep(i,1,n) rep(j,1,m) if(s[i][j]=='#') ans[i+f[id[i][j]]][j]='#';
	rep(i,1,n) {
		rep(j,1,m) putchar(ans[i][j]);
		puts("");
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 21ms
memory: 103892kb

input:

10 10
..........
..######..
..#....#..
..#.#..#..
..#..#.#..
..#....#..
..######..
..........
..#....#..
.......#..


output:

..........
..........
..######..
..#....#..
..#....#..
..#....#..
..#.##.#..
..######..
.......#..
..#....#..

result:

ok 10 lines

Test #2:

score: 0
Accepted
time: 194ms
memory: 130244kb

input:

1583 1799
#..###..##..#.####.##.##.###..#.....##..#.#.#.#......#.....##..#.##...#.#....#..##.###...#...##.###.#.....#.##.###...#..##.#...###..#.###.#...###..#.......#...#....#.#..#...##........#.#..#..##.....###...#..#.####..####...#..##......#........#..#.##.##..#..#....##.##.##..#..##.....###....#...

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1583 lines

Test #3:

score: 0
Accepted
time: 35ms
memory: 110320kb

input:

592 750
.......#..#.#......#.............#...............###..#..#.........#.#.......##.............#.#.#................#..#...#...#......#...#.............#..##..#.#..#..........#..##.#.#..#..#.#...#....#......####.........#..#......#...........#......#............#.###.......##.#..#.#.#...#.#.##....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 592 lines

Test #4:

score: 0
Accepted
time: 165ms
memory: 254656kb

input:

1768 1394
###.###.#######.###.#####.####.##########################.########.###################################.#########################################.#########################.####################.##############.###########################.#######################.################.####.#.#######...

output:

###.###.#######.###.#####.####.##########################.########.###################################.#########################################.#########################.####################.##############.###########################.#######################.################.####...#################...

result:

ok 1768 lines

Test #5:

score: 0
Accepted
time: 34ms
memory: 112540kb

input:

517 1539
.#..#....#.......#..............#.#........................#................#.#.#.............................##.....#.#....#...#.......................#.##..........#...##.....#.......#....#............#.....#......................#....#...#...#......#...........#.............................

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 517 lines

Test #6:

score: 0
Accepted
time: 86ms
memory: 180420kb

input:

1145 1314
##########.###.#####.##.####...##.#####.#######.########.##.#####.######.###.###.########.#.##...######.##.#########.############################.####################################.########.#.###.###.##.###########.#.###########.##############.#.###################.#.##.###############.#...

output:

##########.###.#####.##.####...##.#####.#######.########.##.#####.######.###.###.########.#.##...######.##.#########.############################.####################################.########.#.###.###.##.###########.#.###########.##############.#.###################.#.##.###############.####.####.#...

result:

ok 1145 lines

Test #7:

score: 0
Accepted
time: 53ms
memory: 117908kb

input:

959 1029
...........#....#.....#.........#..#.#..#..#............#..#....#....#.#...##.#........###...###.#....#................#................#....##..##.....#.#.....#.#####...............#......#......#......#..#..#.....##.....#......##..#.##..##.#...##...#...#....#..#.#....#.......#...#.#...##....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 959 lines

Test #8:

score: 0
Accepted
time: 189ms
memory: 183836kb

input:

1414 1827
.#############.###.#######.###..######.#.####.###.#####..##...##########.#..##.######.#..####.#####..##.##.###.#####.#..#.#####.###########.#.#.#####.##.##.#####...##.#####.####.#######.################.#..##.#####..####.###############.###..###########.##.#.#.########.###.###.#.#########....

output:

.#############.###.#######.###..######...####.###.#####..##...##########....##.######.#..####.#####..##.##.###.#####.#....#####.###########.#.#.#####.##.##.#####...##.#####.####.#######.################.#..##.#####..####.###############.###..###########.##.#.#.########.###.###.#.#########..#.#.#####...

result:

ok 1414 lines

Test #9:

score: 0
Accepted
time: 55ms
memory: 119248kb

input:

1206 1020
..#..............#...........................................#.....................#..........#.....#.........#....#........................#...........#...#...#.......#...#..#...#...................#.......#............#..#.....................#...................#.......................#...

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1206 lines

Test #10:

score: 0
Accepted
time: 44ms
memory: 116804kb

input:

1655 302
###..##.#..####.####...#...###..##..#..###.##..#..#########......#..##.#..#.#.#..##.##.#.###.#..#.#......##...#....#.#.##.#.###..###.#####.#..##....#..###....#.#...#....#....##.#....#####.#..####.#.###...##....#.##..#.#####.#.#.#.....#....#######...#.##..####..#.#..#.######.#.#.####...........

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1655 lines

Test #11:

score: 0
Accepted
time: 23ms
memory: 105816kb

input:

103 1848
#..#.###..##.####..#..#.######.##..##..#########.####.##.#.#####.###..#.###..####.#.###.#.#.#.######.#.#####..###.##.####.####..#####.##...#.#######.###.########.####....###...#..##.#..########..###....#######..#######.#..##.##.##.#....#.###.##..####.####.###..##.###.###.#.##..###..#..#####...

output:

#..#.###..##.####..#..#.######.##..##..#########.####.##.#.#####.###....###..####.#.###.#.#...######.#.#####..###.##.####.####..#####......#.#######.###.########.####....###......##.#..########..###....#######..#######.#..##.##...........###.##..####.####......##.###.###.#.##..###..#..#######...####...

result:

ok 103 lines

Test #12:

score: 0
Accepted
time: 81ms
memory: 121832kb

input:

1705 836
#.####.#...######.####.#.#..#.##.####.###..#.#####.#.##.##.#..##....#####..####.##.####..#.####.###....##....##.###.#......###.#####.#.###.#.##...####..###.#.######.####..#...########.##..#...###.#.##.####...#.#..##.####.######.#...#..##.####.##.#...##.#######..###.##.##.#.#.....####.###.#....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1705 lines

Test #13:

score: 0
Accepted
time: 4ms
memory: 104708kb

input:

216 126
####################.###################.###########################.##.#######################.####################.#########
###.########.###############.###########.###.########.###########################################################.###########.
#######################.##############...

output:

####################.###################.###########################.##.#######################.####################.#########
###.########.###############.###########.###.########.###########################################################.###########.
#######################.####################.#...

result:

ok 216 lines

Test #14:

score: 0
Accepted
time: 27ms
memory: 103724kb

input:

143 1806
..#.##.##.#..###.##.##.#...##.#....##.##.##..####.##...#.##......#####...#.......#...####......#.....##.##...#.##....##....###..#..##.#....######....###.####...##..#..##.#.##..##...##..#...#...#..##.#...#..#.#.##...#..#.###..##..##..#.##.###.###..####.#.##..###.####.....#..#...###..#..........

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 143 lines

Test #15:

score: 0
Accepted
time: 39ms
memory: 114812kb

input:

880 578
#.####.#..#.#####.##.###########.###.#.......#.####.########.#######.#..#..#####..#.##.####.##.##.#.#######.##.######.##.###########..#.##.#..#.###..####.##.####.#.########.#.######.###.########.#.######..#####.#######.#.##.###.##.#.##.###.#.####.#..#####.######.########.######.###.#######.#...

output:

..........#.#####.##.###########.............#.####.########.#######.#..#..#####..#.##.####.##.##.#.#######....######.##.###########............###..####.##.####...########.#.######.###.########...######..#####.#######.#.##.###.##.#....###...........#####.######.########.######.....#######.#.##.###....

result:

ok 880 lines

Test #16:

score: 0
Accepted
time: 175ms
memory: 228400kb

input:

1689 1872
#####.###.#########.#.########.#########.#..##.###.#############.#####.##########.#####.####..###############..###..#########.#########.######...#.####.#######..##.####.###..#.#####.########..##########.#.###.#.###.######.####.#.############.##.#..####.###.#.##.###..###.############.#.####...

output:

#####.###.#########.#.########.#########.#..##.###.#############.#####.##########.#####.####..###############..###..#########.#########.######...#.####.#######.....####.###..#.#####.########..##########.#.###.#.###.######.####...############.##.#..####.###.#.##.###..###.############.#.########.#####...

result:

ok 1689 lines

Test #17:

score: 0
Accepted
time: 48ms
memory: 120804kb

input:

1461 866
...#........#..#..........................###...#..#...............##.#..............#.............#....##..#..............#...#..................#.......#..##.#........................#........##.......#...#...........#...........#...........##..................#........##.......#............

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1461 lines

Test #18:

score: 0
Accepted
time: 22ms
memory: 104656kb

input:

149 1851
#.##...####.####.#.###..###.##.#.###.#.#.########.#.#####.#..##.#.###.######.###....#.#####.##..#...##..#########.##.#..#.##.##.#####.##.##...######.#..#####.######.###..######.#...##.##########..#.#..#..###....##.#####.#..#.#.##.##.####.##.###..##.##.##..###..###.####......#...##.#..###.#....

output:

.......####........###..###.##...###.#.#..........................###.######.###....#.#####.##..#...##..#########.##......##....#####.##.##...######.#........######.###..######.#......##########..#.#..#..###.......#####........##.........##.###............###..###.####......#...##........#.............

result:

ok 149 lines

Test #19:

score: 0
Accepted
time: 94ms
memory: 206276kb

input:

1296 1076
##########################.############################.##################.#########.#############.##############################################################.######.###################.#####################################################################################################...

output:

##########################.############################.##################.#########.#############.##############################################################.######.###################.###############################################################################################################...

result:

ok 1296 lines

Test #20:

score: 0
Accepted
time: 134ms
memory: 128100kb

input:

1468 1530
..#.....##............#.....#.....#.#.........#.......#........#.#.#..#.....#.........#......#..#.#..###.....#.........#...#.........##..##.....#...#...##...#......#.####.....#.........#.#.#..........#.#.#...#..#.#........#.##..#.......................#.....#...#..........#....#..#.##..#.....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1468 lines

Test #21:

score: 0
Accepted
time: 131ms
memory: 124952kb

input:

1336 1306
####...##.#.#.......#.#..###...#...#....#..##.##...##.##.....##.#....##.#..#..#....#...#.#..#.............#.#.##....#.#.###.##............###..........#.....####...#..#.#.#....#.###..#.........##.#.#....#.#..###.##.##.##.#.......##..#.#...#..##........#.##.....###...##..#.###.##....###..#....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1336 lines

Test #22:

score: 0
Accepted
time: 32ms
memory: 120636kb

input:

1784 874
.......................#..........................#..........................#................................................................................................................#.........................#.#..........................#................................................

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1784 lines

Test #23:

score: 0
Accepted
time: 32ms
memory: 114480kb

input:

1348 165
##...#......#..##.#.###..##..#...##...#.#........#..........#.....#...#.#..#..#.....#....#...#...#.#.#.......#...#...#......#....#.......................#.##....####
.##...#................##...#..#........###.#.#.....#....#.#.....#........#.#.####...........#.##...#.##.#.....#........##......

output:

.....................................................................................................................................................................
.........................................................................................................................................

result:

ok 1348 lines

Test #24:

score: 0
Accepted
time: 48ms
memory: 118248kb

input:

1658 483
.#....#.###.......#.##.....##..##.#..##..##...##....#.##.###.###.#.##.####.#..####..#.#.###..##...##...#.##.##.##.##.#.##..#.##.#.....####.#..##..###..####.....#..#.#.#.####.#.##.#.##...#.###..#######..###.#####.##.#..##.#..#...###.###.##.##.#.###..###..##.#..##.#..##.#.#.....###..........#...

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1658 lines

Test #25:

score: 0
Accepted
time: 24ms
memory: 116756kb

input:

1999 31
##########.#########.###.#..#..
.#....#####..##..#.####.##.##.#
############.#######..####.####
#.###.######.####.#############
###.############.#.########..##
.###.#####.###.##.###..#.######
#######.#.##.#########.########
########.#..######.##.###..####
..#.##..#.######.####.####..##.
####...

output:

##########.#########.###.#..#..
.#....#####..##..#.####.##.##.#
############.#######..####.####
#.###.######.####.#############
###.############...########..##
.###.#####.###.######..#.######
#######.#.##.#########.########
########....######.##.###..####
..#.##..########.####.####..##.
############...

result:

ok 1999 lines

Test #26:

score: 0
Accepted
time: 35ms
memory: 115956kb

input:

1270 377
..#..#.##...#.##..#...#..#...####....#.....##.#..#......#.##..#.##.##....##.##....#.#..#.##..#.###....###.##..#...###.#.#..###..#.#........#.......#...#...#....#...#.#...#.#..#...###..........#.....#.#..#.....#.#.#..#####......##..#.#....##.#..#.....##..##.##.#.#...###.#####.#.#.#.##..........

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1270 lines

Test #27:

score: 0
Accepted
time: 28ms
memory: 119480kb

input:

1834 683
...........................................#.......................................................................#...................................#..............#........................................#..........#.................................#........................#................

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1834 lines

Test #28:

score: 0
Accepted
time: 41ms
memory: 114548kb

input:

972 628
#.##.##....##..#..##.######.#.##.#..######.#.##...#.##.###..#...#.####.#.#..####..#.###.#...#.......#..#.#.#....#..#..##.#.###....#.##..#..#....#.#.#.#.#..#.###...#######.##..##.#.##..###..###.##.#..##.#####.#.##...##......#.###.....###########...#.#####..##.#...###.##.#.#.#.#.####.#.##..#.....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 972 lines

Test #29:

score: 0
Accepted
time: 7ms
memory: 107832kb

input:

287 367
#####.####.##.#####.#####.##.#############.############.#.###.###.##.###########..##.#########.###########.####.#########.#########.#####.########.##.#####...#.#.##############.#######.#.#.#.###.##########.#########.##.#.#####.##########################.#######.#################.#######.####...

output:

#####.####.##.#####.#####.##.#############.############.#.###.###.##.###########.....#########.###########.####.#########.#########.#####.########.##.#####...#.#.##############.#######.....#.###.##########.#########.##.#.#####.##########################.#######.#################.#######.#####.#.####...

result:

ok 287 lines

Test #30:

score: 0
Accepted
time: 165ms
memory: 128048kb

input:

1886 1566
###.###..####.....#.##...#....##...#...#...####..#....#####..#...######..#..#..#...#..##.##..#.#.#.##..#..##...#..####..#.#.###...#..#.##.#.#..#.#####.######..#.###.#########..###..##.#.#########.#.####.##..#####..#...#.#....#..###.##..###......###..####.########....#####.......####.#.#......

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1886 lines

Test #31:

score: 0
Accepted
time: 26ms
memory: 145064kb

input:

1986 227
######.############################################################################################################################.###############################################################################################
##.############################################################...

output:

######.############################################################################################################################.###############################################################################################
##.#####################################################################...

result:

ok 1986 lines

Test #32:

score: 0
Accepted
time: 27ms
memory: 109372kb

input:

625 676
......#.....................#...#....#......#........................#..##..................#.................##.............#......#..............#.....#..........................#...###.........#.###......#...#..#.#.........##..#.........##..........#.#........#..#.............#.#...##..#....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 625 lines

Test #33:

score: 0
Accepted
time: 81ms
memory: 177704kb

input:

974 1358
#########.##################.######.####.#############.################.############.######.######.#####.######.###################.################.#########.################################################.###.#############.##########.#############.#######.#######.#.##########.###########...

output:

#########.##################.######.####.#############.################.############.######.######.#####.######.###################.################.#########.################################################.###.#############.##########.#############.#######.#######.#.##########.####################...

result:

ok 974 lines

Test #34:

score: 0
Accepted
time: 48ms
memory: 117484kb

input:

1565 351
..#.....#....#...........#..#...##....#..###....#.....#.....####.##..#.##..#.##..####..#..###.........#...#.....##...##.#...#..#....#.#.#.#......##....#...#....#....#...#..#..#.##.#.#.......#.###.#.##....##.##.####.###......##.##.....##.#.##.####.#....#.#.####...#.....##...##...#.####....#....

output:

...............................................................................................................................................................................................................................................................................................................

result:

ok 1565 lines

Test #35:

score: 0
Accepted
time: 22ms
memory: 110860kb

input:

1907 15
...............
...#...........
...............
...............
.....#.........
.........#.....
...........#..#
...............
.............#.
...............
...............
...............
........#......
...............
...............
...............
..........##...
.#.............
.......

output:

...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............
...............

result:

ok 1907 lines

Test #36:

score: -100
Memory Limit Exceeded

input:

1597 1522
#######################.###########################.###.####.######.#################################################.#####################################.#####################################.##############################.##########################.####################.################....

output:


result: