Submission #46841271


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)
#define per(i,n) for(int i=n-1;i>=0;i--)
#define rng(i,c,n) for(int i=c;i<n;i++)
#define fi first
#define se second
#define pb push_back
#define sz(a) (int)a.size()
#define vec(...) vector<__VA_ARGS__>
#define _3S9b3IL ios::sync_with_stdio(0),cin.tie(0)
typedef long long ll;
using pii=pair<int,int>;
using vi=vector<int>;
void print(){cout<<'\n';}
template<class h,class...t>
void print(const h&v,const t&...u){cout<<v<<' ',print(u...);}

void slv(){
	int n,m;
	cin>>n>>m;

	vec(string) a(n);
	rep(i,n){
		cin>>a[i];
	}

	vec(vi) usd(n,vi(m));
	const int di[]={1,-1,0,0};
	const int dj[]={0,0,1,-1};
	auto ok=[&](int i,int j)->int{
		return min(i,j)>=0 and i<n and j<m;
	};
	auto dfs=[&](auto self,int i,int j)->void{
		if(a[i][j]=='.' or usd[i][j]) return;
		usd[i][j]=1;
		rng(ni,i-1,i+2){
			rng(nj,j-1,j+2){
				if(max(abs(i-ni),abs(j-nj))!=1) continue;
				if(ok(ni,nj)){
					self(self,ni,nj);
				}
			}
		}
	};
	int ans=0;
	rep(i,n){
		rep(j,m){
			if(!usd[i][j] and a[i][j]=='#'){
				ans++;
				dfs(dfs,i,j);
			}
		}
	}
	print(ans);
}

signed main(){
_3S9b3IL;
	slv();
}

Submission Info

Submission Time
Task C - Sensors
User inksamurai
Language C++ 17 (gcc 12.2)
Score 300
Code Size 1226 Byte
Status AC
Exec Time 60 ms
Memory 39864 KiB

Compile Error

Main.cpp: In function ‘void slv()’:
Main.cpp:29:19: warning: unused variable ‘di’ [-Wunused-variable]
   29 |         const int di[]={1,-1,0,0};
      |                   ^~
Main.cpp:30:19: warning: unused variable ‘dj’ [-Wunused-variable]
   30 |         const int dj[]={0,0,1,-1};
      |                   ^~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 4
AC × 33
Set Name Test Cases
Sample sample00.txt, sample01.txt, sample02.txt, sample03.txt
All sample00.txt, sample01.txt, sample02.txt, sample03.txt, testcase00.txt, testcase01.txt, testcase02.txt, testcase03.txt, testcase04.txt, testcase05.txt, testcase06.txt, testcase07.txt, testcase08.txt, testcase09.txt, testcase10.txt, testcase11.txt, testcase12.txt, testcase13.txt, testcase14.txt, testcase15.txt, testcase16.txt, testcase17.txt, testcase18.txt, testcase19.txt, testcase20.txt, testcase21.txt, testcase22.txt, testcase23.txt, testcase24.txt, testcase25.txt, testcase26.txt, testcase27.txt, testcase28.txt
Case Name Status Exec Time Memory
sample00.txt AC 1 ms 3472 KiB
sample01.txt AC 1 ms 3344 KiB
sample02.txt AC 1 ms 3420 KiB
sample03.txt AC 1 ms 3376 KiB
testcase00.txt AC 22 ms 8552 KiB
testcase01.txt AC 23 ms 8284 KiB
testcase02.txt AC 20 ms 7564 KiB
testcase03.txt AC 24 ms 11004 KiB
testcase04.txt AC 20 ms 7920 KiB
testcase05.txt AC 23 ms 8360 KiB
testcase06.txt AC 22 ms 8708 KiB
testcase07.txt AC 24 ms 8400 KiB
testcase08.txt AC 19 ms 7472 KiB
testcase09.txt AC 23 ms 8708 KiB
testcase10.txt AC 21 ms 8020 KiB
testcase11.txt AC 25 ms 8328 KiB
testcase12.txt AC 29 ms 27720 KiB
testcase13.txt AC 31 ms 39864 KiB
testcase14.txt AC 20 ms 9868 KiB
testcase15.txt AC 19 ms 7748 KiB
testcase16.txt AC 4 ms 7588 KiB
testcase17.txt AC 14 ms 8036 KiB
testcase18.txt AC 14 ms 8084 KiB
testcase19.txt AC 9 ms 7532 KiB
testcase20.txt AC 10 ms 8092 KiB
testcase21.txt AC 13 ms 7612 KiB
testcase22.txt AC 16 ms 8180 KiB
testcase23.txt AC 24 ms 7792 KiB
testcase24.txt AC 25 ms 8052 KiB
testcase25.txt AC 36 ms 7868 KiB
testcase26.txt AC 40 ms 8596 KiB
testcase27.txt AC 54 ms 26820 KiB
testcase28.txt AC 60 ms 29708 KiB