Submission #69660881


Source Code Expand

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int INF=1e9;
const int fx[4]={0,0,1,-1};
const int fy[4]={1,-1,0,0};
int n,m,l,r,ans;
pair<int,int> que[300010];
vector<int> a[300010];
char s[300010];
inline bool check(int x,int y){
	if(x<1||x>n||y<1||y>m||a[x][y]!=INF) return false;
	int mn=INF,tim=0;
	for(int i=0;i<4;i++){
		int X=x+fx[i];
		int Y=y+fy[i];
		if(X<1||X>n||Y<1||Y>m) continue;
		if(a[X][Y]<mn) mn=a[X][Y],tim=0;
		if(a[X][Y]==mn) tim++;
	}
	return (tim==1);
}
signed main(){
	scanf("%lld%lld",&n,&m);
	for(int i=1;i<=n;i++){
		a[i].resize(m+2);
		for(int j=1;j<=m;j++){
			a[i][j]=INF;
		}
	}
	for(int i=1;i<=n;i++){
		scanf("%s",s+1);
		for(int j=1;j<=m;j++){
			if(s[j]=='#'){
				ans++;
				a[i][j]=0;
				que[++r]=make_pair(i,j);
			}
		}
	}
	while(l!=r){
		pair<int,int> N=que[++l];
		for(int i=0;i<4;i++){
			int x=N.first+fx[i];
			int y=N.second+fy[i];
			if(check(x,y)){
				ans++;
				a[x][y]=a[N.first][N.second]+1;
				que[++r]=make_pair(x,y);
			}
		}
	}
	printf("%lld\n",ans);
	return 0;
}

Submission Info

Submission Time
Task D - Ulam-Warburton Automaton
User wrhaco
Language C++ 20 (gcc 12.2)
Score 425
Code Size 1100 Byte
Status AC
Exec Time 23 ms
Memory 14120 KiB

Compile Error

Main.cpp: In function ‘int main()’:
Main.cpp:24:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   24 |         scanf("%lld%lld",&n,&m);
      |         ~~~~~^~~~~~~~~~~~~~~~~~
Main.cpp:32:22: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   32 |                 scanf("%s",s+1);
      |                 ~~~~~^~~~~~~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 425 / 425
Status
AC × 3
AC × 40
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt, 01_test_34.txt, 01_test_35.txt, 01_test_36.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 2 ms 3604 KiB
00_sample_01.txt AC 2 ms 3820 KiB
00_sample_02.txt AC 2 ms 3588 KiB
01_test_00.txt AC 16 ms 7780 KiB
01_test_01.txt AC 8 ms 5664 KiB
01_test_02.txt AC 10 ms 6380 KiB
01_test_03.txt AC 14 ms 7232 KiB
01_test_04.txt AC 16 ms 8020 KiB
01_test_05.txt AC 19 ms 9220 KiB
01_test_06.txt AC 19 ms 9224 KiB
01_test_07.txt AC 18 ms 9300 KiB
01_test_08.txt AC 20 ms 9236 KiB
01_test_09.txt AC 20 ms 9324 KiB
01_test_10.txt AC 12 ms 8476 KiB
01_test_11.txt AC 13 ms 8944 KiB
01_test_12.txt AC 14 ms 9152 KiB
01_test_13.txt AC 14 ms 8948 KiB
01_test_14.txt AC 14 ms 9188 KiB
01_test_15.txt AC 15 ms 9132 KiB
01_test_16.txt AC 15 ms 9044 KiB
01_test_17.txt AC 16 ms 9056 KiB
01_test_18.txt AC 17 ms 9052 KiB
01_test_19.txt AC 19 ms 9152 KiB
01_test_20.txt AC 11 ms 8676 KiB
01_test_21.txt AC 11 ms 9448 KiB
01_test_22.txt AC 11 ms 9136 KiB
01_test_23.txt AC 12 ms 8984 KiB
01_test_24.txt AC 13 ms 8884 KiB
01_test_25.txt AC 13 ms 8840 KiB
01_test_26.txt AC 13 ms 8956 KiB
01_test_27.txt AC 15 ms 8900 KiB
01_test_28.txt AC 15 ms 10960 KiB
01_test_29.txt AC 23 ms 14120 KiB
01_test_30.txt AC 16 ms 11984 KiB
01_test_31.txt AC 15 ms 11112 KiB
01_test_32.txt AC 20 ms 11932 KiB
01_test_33.txt AC 20 ms 11948 KiB
01_test_34.txt AC 17 ms 11192 KiB
01_test_35.txt AC 17 ms 10704 KiB
01_test_36.txt AC 11 ms 9528 KiB