数学联邦政治世界观
超小超大

数学(四) (2-1)

flood fill能够在线性时间复杂度内,找到某个点所在的连通块。

四联通常用数组加一层循环判断

int dx[4] = {0, -1, 0, 1}, dy[4] = {-1, 0, 1, 0};

八联通常用二层循环遍历‬

tip:注意二层循环排除自己的情况

for (int i = t.x - 1; i <= t.x + 1; i ++ )

for (int j = t.y - 1; j <= t.y + 1; j ++ )

注意循环条件内的if特判,参考代码如下(应该是acwing1098)

include:<iostream>

include:<queue>

include:<utility>

using namespace std;

define:x first

define:y second

define:IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);

typedef pair<int,int> PII;

const int N=55;

queue<PII>q;

int g[N][N];

bool st[N][N];

int cnt=0, ss=0, n, m;

int dx[4] = {0, -1, 0, 1}, dy[4] = {-1, 0, 1, 0};

int bfs(int a, int b) {

q.push({a, b});

st[a][b]=true;

int area=0;

while(q.size()) {

auto t=ont();

q.pop();

area++;

for(int i=0; i<4; i++) {

int sx=t.x+dx[i], sy=t.y+dy[i];

if(sx<=0 || sy<=0 || sx>n || sy>m) continue;

if(g[t.x][t.y] >> i & 1) continue;

if(st[sx][sy]) continue;

q.push({sx, sy});

st[sx][sy]=true;

}

}

return area;

}

void solve() {

cin>>n>>m;

for(int i=1; i<=n; i++) {

for(int j=1; j<=m; j++) {

cin>>g[i][j];

}

}

数学联邦政治世界观提示您:看后求收藏(同人小说网http://tongren.me),接着再看更方便。

相关小说

短篇:故事 连载中
短篇:故事
单字一名
什么类也写,不限制
3.8万字9个月前
国运之队友猫和老鼠,我精神病怕啥? 连载中
国运之队友猫和老鼠,我精神病怕啥?
化作尘埃
【国运+有点搞笑】主角的队友是:汤姆,杰瑞,麒麟。颜念∶我一个精神病,我怕啥?啧,看不顺眼,一刀一个。看淡生死,不服就干。白白∶你知不知道绑......
0.3万字8个月前
腐朽化神奇,反派也逍遥 连载中
腐朽化神奇,反派也逍遥
楠笙黎
(黑历史,别看,三年后重新开坑,详情见《反派被我玩成了正派》预告:《当时明月在》)❗️本作品已签约,未经允许,不得抄袭或转载❗️【cp关系主......
22.2万字8个月前
请带她离开 连载中
请带她离开
尘七缘
世有三界,人界,冥界,妖魔界独独没有神界故事由此开始——神界陨落,妖魔横生最后一分神力注入神兽体内,且看神兽如何带领众人玩转妖魔界,守护天道......
10.3万字8个月前
当瓢猫看到自己的照片!!! 连载中
当瓢猫看到自己的照片!!!
只粉瓢猫
《猫猫爱瓢瓢》和《艾俊的追妻36计》的作者
0.5万字8个月前
慕雨生生 连载中
慕雨生生
顾招徕
(已完结)慕娴在18岁这年,一到下雨天就做一些奇奇怪怪的梦,在梦里经历的事情到底是梦还是真?[1v1,男主很宠女主,感情线可能很少]
8.2万字8个月前