B Minesweeper 思維 二種思路

2021-09-27 11:14:03 字數 1379 閱讀 2847

傳送門

題意:模擬掃雷步驟,有雷的去標記,看是否存在標記錯誤的情況。

掃雷的規則是:如果乙個區域八種方向存在雷的話,這個地方就要標記上數字,有幾個雷標記幾。

思路;兩種思路:

一:開兩個陣列,將字元型陣列轉化為整型陣列,

乙個陣列存原圖,將』.『全轉化為0。其餘的字元數字-『0』轉化為整形。

遍歷原來的陣列,遇到『*'就將八個方向不是雷的區域-1.

最後掃一遍整形圖,如果有不等於0的區域就直接no即可。

二:在原圖的基礎上修改,遇到』.『就將其變為0,遇到數字就-『0』轉化為整形。最後在原陣列上進行遍歷,遇到數字去找雷,如果雷的個數不等於數字個數,那麼直接no -> return 0.

第一種:

#include

#define ll long long

const

int maxn =

1e5+5;

using namespace std;

char a[

105]

[105];

int b[

105]

[105];

intmain()

for(

int i =

1; i <= n; i++

)for

(int j =

1; j <= m; j++)if

(a[i]

[j]==

'*')

bool flag =1;

for(

int i =

1; i <= n; i++)}

cout <<

"yes"

<< endl;

//system("pause");

return0;

}

第二種:

#include

#define ll long long

const

int maxn =

1e5+5;

using namespace std;

char a[

105]

[105];

intmain()

int cnt =0;

for(

int i =

1; i <= n; i++

)for

(int j =

1; j <= m; j++)if

(a[i]

[j]!=

'*')

cnt=0;

} cout<<

"yes"

return0;

}

《失控》之二 蜂群思維

無數個體聚集而成的群集,其所表現出來的特質就如同乙個整體,其湧現出來的能力超越個體能力的總和,蜂群如此,蟻群如此,自然界中的事物都是如此,這就是具備自然邏輯的超級生命體。這是一種分布式 無 控制的系統,每個個體都自主行動,同時與其他個體交流,互相影響。當個體的數量達到一定程度後,就會從量變到質變,比...

攀爬 二分, 思維

若存在乙個合法的攀爬序列,則其形式一定是 ak i 1 m ai bi la sum limits m a i b i geq l ak i 1 m ai bi l,於是考慮列舉 a ka k ak 設 di ai b id i a i b i di ai bi 按 d dd從大到小排序,然後 o ...

漢諾塔(二) 思維

時間限制 3000 ms 記憶體限制 65535 kb 難度 5 描述漢諾塔的規則這裡就不再多說了,詳見題目 漢諾塔 一 現在假設規定要把所有的金片移動到第三個針上,給你任意一種處於合法狀態的漢諾塔,你能計算出從當前狀態移動到目標狀態所需要的最少步數嗎?輸入第一行輸入乙個整數n,表示測試資料的組數 ...