题目描述
blablabla
样例
blablabla
算法1
标准简单的dfs
blablabla
时间复杂度
参考文献
C++ 代码
#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
const int N=30;char a[N][N];
int b[3000];
int n,m;
int dx[4]={0,1,0,-1};
int dy[4]={1,0,-1,0};int cnt;
void dfs(int x,int y){
int tx=0,ty=0;
a[x][y]='*';
cnt++;
for(int i=0;i<4;i++){
tx = x + dx[i];ty = y + dy[i];
if(a[tx][ty]=='.'&&tx>=0&&tx<m&&ty>=0&&ty<n){
dfs(tx,ty);
}
}
return ;
}
int main(){
int c,g;int t=0;
while(cin>>n>>m){if(n==0||m==0) break;
cnt=0;t++;
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
cin>>a[i][j];
}
}
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
if(a[i][j]=='@') {//t++;
dfs(i,j);
}
}
}
b[t]=cnt;
}
for(int i=0;i<3000;i++){
if(b[i]!=0) cout<<b[i]<<endl;
}
return 0;
}
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
复杂度怎么都不是
%%%
blabla啥意思?
balabala就是@¥#%¥……¥懂了吗大佬
hh,这就是大佬吧,是我土了
Orz