標題 全球變暖

2021-09-13 10:43:01 字數 1556 閱讀 9362

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

.......

.##....

.##....

....##.

..####.

...###.

.......

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

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

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

.......

.......

.......

.......

....#..

.......

.......

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

【輸入格式】

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

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

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

【輸出格式】

乙個整數表示答案。

【輸入樣例】

7 .......

.##....

.##....

....##.

..####.

...###.

.......  

【輸出樣例】

1  資源約定:

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

cpu消耗  < 1000ms

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

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

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

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

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

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

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

#includeusing namespace std;

const int maxn = 1e6;

const int inf = 0x3f3f3f3f;

int dir[4][2]=;

int value[1001][1001]=;//染色

int value2[1001][1001]=;

int v=1;

int vis[1001][1001]=;

int n;

//染色

void dfs(int x,int y,int v)}}

}//模擬沉沒

void dfs2(int x,int y)

}int main()

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

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

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

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

}cout<}

全球變暖(BFS)

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

全球變暖,人類何去何從?

對於我國很多地方來說,酷熱天氣還在許多省份肆虐,比如從全國最高氣溫分布圖上看,我國很多地方的氣溫都超過了36攝氏度。同時因為濕度非常大,我國很多地方不僅酷熱,而且是極為悶熱的體感,讓人感覺極為難受。在我國酷熱的同時,全球其他地方似乎也正在經歷一樣的炎熱天氣 繼美國多地的罕見高溫天氣過後,歐洲似乎接過...

全球變暖(藍橋杯)

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