7 7 大炮打蚊子 (15 分)

2021-09-12 04:15:43 字數 1183 閱讀 2066

現在,我們用大炮來打蚊子:蚊子分布在乙個m×n格的二維平面上,每只蚊子佔據一格。向該平面的任意位置發射炮彈,炮彈的殺傷範圍如下示意:

ooxo

o其中,x為炮彈落點中心,o為緊靠中心的四個有殺傷力的格仔範圍。若蚊子被炮彈命中(位於x格),一擊斃命,若僅被殺傷(位於o格),則損失一半的生命力。也就是說,一次命中或者兩次殺傷均可消滅蚊子。現在給出蚊子的分布情況以及連續k發炮彈的落點,給出每炮消滅的蚊子數。

輸入格式:

第一行為兩個不超過20的正整數m和n,中間空一格,表示二維平面有m行、n列。

接下來m行,每行有n個0或者#字元,其中#表示所在格仔有蚊子。

接下來一行,包含乙個不超過400的正整數k,表示發射炮彈的數量。

最後k行,每行包括一發炮彈的整數座標x和y(0≤x輸出格式:

對應輸入的k發炮彈,輸出共有k行,第i行即第i發炮彈消滅的蚊子數。

輸入樣例:

5 600#00#

000###

00#000

000000

00#000

21 2

1 4輸出樣例:02

把二維字串轉化為二維陣列,注意初始化為負數。具體見**。

#include

using

namespace std;

int a[

700]

[700];

intmain()

else}}

cin>>k;

while

(k--)if

(a[x+1]

[y]>=1)

else

a[x+1]

[y]++;}

if((x-1

)>=0)

if(a[x-1]

[y]>=1)

else

a[x-1]

[y]++;}

if(a[x]

[y+1

]>=1)

else

a[x]

[y+1]++

;}if(

(y-1

)>=0)

if(a[x]

[y-1

]>=1)

else

a[x]

[y-1]++

;}cout<}return0;

}

7 6 大炮打蚊子

現在,我們用大炮來打蚊子 蚊子分布在乙個m n格的二維平面上,每只蚊子佔據一格。向該平面的任意位置發射炮彈,炮彈的殺傷範圍如下示意 ooxo o其中,x為炮彈落點中心,o為緊靠中心的四個有殺傷力的格仔範圍。若蚊子被炮彈命中 位於x格 一擊斃命,若僅被殺傷 位於o格 則損失一半的生命力。也就是說,一次...

5 5 大炮打蚊子 15分

現在,我們用大炮來打蚊子 蚊子分布在乙個m times nm n格的二維平面上,每只蚊子佔據一格。向該平面的任意位置發射炮彈,炮彈的殺傷範圍如下示意 o oxo o其中,x為炮彈落點中心,o為緊靠中心的四個有殺傷力的格仔範圍。若蚊子被炮彈命中 位於x格 一擊斃命,若僅被殺傷 位於o格 則損失一半的生...

7 42 大炮打蚊子 15 分

7 42 大炮打蚊子 15 分 c 現在,我們用大炮來打蚊子 蚊子分布在乙個m n格的二維平面上,每只蚊子佔據一格。向該平面的任意位置發射炮彈,炮彈的殺傷範圍如下示意 o oxoo其中,x為炮彈落點中心,o為緊靠中心的四個有殺傷力的格仔範圍。若蚊子被炮彈命中 位於x格 一擊斃命,若僅被殺傷 位於o格...