nefu 561 方塊計算(DFS)

2021-07-11 13:48:31 字數 1488 閱讀 2893

有一間長方形的房子,地上鋪了紅色、黑色兩種顏色的正方形瓷磚。你站在其中一塊黑色的瓷磚上,只能向相鄰的黑色瓷磚移動。請寫乙個程式,計算你總共能夠到達多少塊黑色的瓷磚。

輸入有多組。每組的第一行是兩個整數w 和h,分別表示x 方向和y 方向瓷磚的數量。w 和h 都不超過20。在接下來的h 行中,每行包括w 個字元。

 每個字元表示一塊瓷磚的顏色,規則如下:

 1)『.』:黑色的瓷磚;

 2)『#』:白色的瓷磚;

 3)『@』:黑色的瓷磚,並且你站在這塊瓷磚上。該字元在每個資料集合中唯一出現一次。

輸出你總共能夠達到的方塊數。

6 9

....#.

.....#

......

......

......

......

......

#@...#

.#..#.

11 9

.#.........

.#.#######.

.#.#.....#.

.#.#.###.#.

.#.#..@#.#.

.#.#####.#.

.#.......#.

.#########.

...........

11 6

..#..#..#..

..#..#..#..

..#..#..###

..#..#..#@.

..#..#..#..

..#..#..#..

7 7..#.#..

..#.#..

###.###

...@...

###.###

..#.#..

..#.#..

0 0

45596

13

題解:注意:凡是走過的瓷磚不能被重複走過,可以通過每走一塊瓷磚就將它標記,保證不重複計算任何瓷磚。
ac**:
#include#include#include#include#include#include#include#include#include#includetypedef long long ll;

using namespace std;

const int dx=;

const int dy=;

int n,m;

char a[100][100];

void dfs(int x,int y)

return dfs(x+1,y) + dfs(x,y+1) + dfs(x-1,y) + dfs(x,y-1) + d;

}int main()

return 0;

}

nefu561 方塊計算

有一間長方形的房子,地上鋪了紅色 黑色兩種顏色的正方形瓷磚。你站在其中一塊黑色的瓷磚上,只能向相鄰的黑色瓷磚移動。請寫乙個程式,計算你總共能夠到達多少塊黑色的瓷磚。輸入有多組。每組的第一行是兩個整數w 和h,分別表示x 方向和y 方向瓷磚的數量。w 和h 都不超過20。在接下來的h 行中,每行包括w...

4 1 方塊介紹

方塊對於minecraft顯然是必不可缺的。它們構成了所有的地形 建築和機械。如果你對製作乙個模組感興趣,你會有想要往裡面加入一些方塊的機會。這個頁面將會引導你建立方塊,以及你可以對它們做的一些事情。對於不需要特殊功能 想想圓石 木板等 的簡單方塊並不需要乙個自定義的類。只需要例項化block類並呼...

78 方塊轉換

問題描述 一塊n x n 1 寫乙個程式來找出將原始圖案按照以下列轉換方法轉換成新圖案的最小方式 1 轉90度 圖案按順時針轉90度。2 轉180度 圖案按順時針轉180度。3 轉270度 圖案按順時針轉270度。4 反射 圖案在水平方向翻轉 形成原圖案的映象 5 組合 圖案在水平方向翻轉,然後按照...