全球變暖 藍橋杯2018省賽

2021-09-13 02:28:14 字數 2121 閱讀 8515

【題目描述】

你有一張某海域nxn畫素的**,"."表示海洋、"#"表示陸地,如下所示:

.......

.##....

.##....

....##.

..####.

...###.

.......

其中"上下左右"四個方向上連在一起的一片陸地組成一座島嶼。例如上圖就有2座島嶼。  

由於全球變暖導致了海面上公升,科學家**未來幾十年,島嶼邊緣乙個畫素的範圍會被海水淹沒。具體來說如果一塊陸地畫素與海洋相鄰(上下左右四個相鄰畫素中有海洋),它就會被淹沒。  

例如上圖中的海域未來會變成如下樣子:

.......

.......

.......

.......

....#..

.......

.......

請你計算:依照科學家的**,**中有多少島嶼會被完全淹沒。  

【輸入格式】

第一行包含乙個整數n。  (1 <= n <= 1000)  

以下n行n列代表一張海域**。  

**保證第1行、第1列、第n行、第n列的畫素都是海洋。  

【輸出格式】

乙個整數表示答案。

【樣例輸入】

7 .......

.##....

.##....

....##.

..####.

...###.

.......  

【樣例輸出】

1  資源約定:

峰值記憶體消耗(含虛擬機器) < 256m

cpu消耗  < 1000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。

注意:main函式需要返回0;

只使用ansi c/ansi c++ 標準;

不要呼叫依賴於編譯環境或作業系統的特殊函式。

所有依賴的函式必須明確地在原始檔中 #include

不能通過工程設定而省略常用標頭檔案。

提交程式時,注意選擇所期望的語言型別和編譯器型別。

//21:10 21:20  思路出   10

//23:20 23:35 15

//7:45 8:05 20

#includeusing namespace std;

int n;

bool vis[1005][1005];

char a[1005][1005];

char b[1005][1005];

bool v[1005][1005];

void dfs(int i,int j)

if(a[i][j]=='#')

dfs(i+1,j);

dfs(i-1,j);

dfs(i,j+1);

dfs(i,j-1); }

void dfs2(int i,int j)

if(b[i][j]=='#')

dfs(i+1,j);

dfs(i-1,j);

dfs(i,j+1);

dfs(i,j-1); }

void change()

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

} }int main()

} int ans=0,ans2=0;

for(int i=1;i<=n;i++)//運用dfs計算陸地的數量

} }change();

for(int i=1;i<=n;i++)//運用dfs計算陸地的數量

} }

cout<#include using namespace std;

int n, m, cnt=0;

string maze[110];

bool vis[110][110];

void dfs(int x,int y)

vis[x][y]=true;

dfs(x-1,y);

dfs(x+1,y);

dfs(x,y-1);

dfs(x,y+1);

}int main()

for (int i = 0; i < n; i++)

}} cout<}

2018藍橋杯省賽C C B組 全球變暖

題目大意你有一張某海域nxn畫素的 表示海洋 表示陸地,如下所示 其中 上下左右 四個方向上連在一起的一片陸地組成一座島嶼。例如上圖就有2座島嶼。由於全球變暖導致了海面上公升,科學家 未來幾十年,島嶼邊緣乙個畫素的範圍會被海水淹沒。具體來說如果一塊陸地畫素與海洋相鄰 上下左右四個相鄰畫素中有海洋 它...

2018藍橋杯省賽B組 9 全球變暖

你有一張某海域nxn畫素的 表示海洋 表示陸地,如下所示 其中 上下左右 四個方向上連在一起的一片陸地組成一座島嶼。例如上圖就有2座島嶼。由於全球變暖導致了海面上公升,科學家 未來幾十年,島嶼邊緣乙個畫素的範圍會被海水淹沒。具體來說如果一塊陸地畫素與海洋相鄰 上下左右四個相鄰畫素中有海洋 它就會被淹...

藍橋杯2018初賽 全球變暖

題目描述 你有一張某海域nxn畫素的 表示海洋 表示陸地,如下所示 其中 上下左右 四個方向上連在一起的一片陸地組成一座島嶼。例如上圖就有2座島嶼。由於全球變暖導致了海面上公升,科學家 未來幾十年,島嶼邊緣乙個畫素的範圍會被海水淹沒。具體來說如果一塊陸地畫素與海洋相鄰 上下左右四個相鄰畫素中有海洋 ...