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 |
|
|
| 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 |