廣度優先搜尋 填塗顏色

2021-07-26 05:22:38 字數 1012 閱讀 3021

前排提示

壯哉我大c黨

洛谷 p1162 填塗顏色

題目描述

由數字0 組成的方陣中,有一任意形狀閉合圈,閉合圈由數字1構成,圍圈時只走上下左右4個方向。現要求把閉合圈內的所有空間都填寫成2.例如:6x6的方陣(n=6),塗色前和塗色後的方陣如下:

0 0 0 0 0 0| 0 0 0 0 0 0

0 0 1 1 1 1| 0 0 1 1 1 1

0 1 1 0 0 1| 0 1 1 2 2 1

1 1 0 0 0 1| 1 1 2 2 2 1

1 0 0 0 0 1| 1 2 2 2 2 1

1 1 1 1 1 1| 1 1 1 1 1 1

因為看著不方便所以在中間加了橫線以便區分

分析

和曾經的oibh總部相當相像,不過還要將被圍住的地方塗上「2」而已

加乙個陣列即可(標記所有走過的地方),最後依照該陣列輸出(什麼?0和1怎麼辦?原陣列即可解決(即若b[i]<>0就照原陣列輸出,反之就會了吧?))

#include

using

namespace

std;

int a[30][30];

int b[30][30];

int s[900][2];

int dx[5];

int dy[5];

int n;

void init()

dx[1]=1;dx[2]=-1;dx[3]=0;dx[4]=0;

dy[3]=1;dy[4]=-1;dy[1]=0;dy[2]=0;

return;

}void bfs(int x,int y)

}while (hreturn;

}void doit()

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

int main()

廣度搜尋 填塗顏色

題目 由數字0組成的方陣中,有一任意形狀閉合圈,閉合圈由數字1構成,圍圈時只走上下左右4個方向。現要求把閉合圈內的所有空間都填寫成2.例如 6 6的方陣 n 6 塗色前和塗色後的方陣如下 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 ...

洛谷P1162 填塗顏色(BFS廣度優先搜尋)

基礎是bfs,還不懂的同學移步 洛谷p1135 奇怪的天梯 bfs廣度優先搜尋基礎題 張牧歌 cnblogs.com 這裡不做多贅述。這裡拿photoshop來舉例。這裡是乙隻嘉然,如果我不要這個白色背景,只要本體可以怎麼摳圖呢?對ps有了解的同學可以使用魔棒工具,即選取與點選地方顏色相近的部分。將...

搜尋 luoguP1162 填塗顏色

題目 一道很裸的搜尋題 我們可以一開始把所有的零賦值成2 然後從四條邊界往裡搜 所有與邊界相鄰的2 能搜到的2 都賦值成0即可 最後輸出整個矩陣 如下 include include include using namespace std define in read typedef long lo...