第十二屆藍橋杯校內模擬賽真題決議系列(3)
大學C組C/C++
問題描述
在一個 n 行 m 列的方格圖上有一些位置有地雷,另外一些位置為空,
請為每個空位置標一個整數,表示周圍八個相鄰的方格中有多少個地雷,
輸入格式
輸入的第一行包含兩個整數 n, m,
第 2 行到第 n + 1 行每行包含 m 個整數,相鄰整數之間用一個空格分隔,如果對應的整數為 0,表示這一格沒有地雷,如果對應的整數為 1,表示這一格有地雷,
輸出格式
輸出 n 行,每行 m 個整數,相鄰整數之間用空格分隔,
對于沒有地雷的方格,輸出這格周圍的地雷數量,對于有地雷的方格,輸出 9,
樣例輸入
3 4
0 1 0 0
1 0 1 0
0 0 1 0
樣例輸出
2 9 2 1
9 4 9 2
1 3 9 2
資料規模和約定
對于所有評測用例,1 <= n, m <= 100,
參考代碼如下:
#include<iostream>
using namespace std;
int n,m,a[105][105],b[105][105];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)cin>>a[i][j];
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++){
if(a[i][j])b[i][j]=9;
else{
int sum=0;
for(int k=-1;k<=1;k++)
for(int l=-1;l<=1;l++)sum+=a[i+k][j+l];
b[i][j]=sum;
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++)cout<<b[i][j]<<" ";cout<<endl;
}
return 0;
}

私聊博主,獲取更多藍橋杯大賽相關資料
歷年省賽國賽真題
賽題視頻詳細講解
藍橋官網VIP試題
ACM競賽教程資料
經典演算法,絕對經典
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/265508.html
標籤:其他
下一篇:關于時序InSAR的一些總結
