双语解法
2026-07-17 08:29:46
发布于:陕西
1阅读
0回复
0点赞
C++(推荐):
#include<iostream>
using namespace std;int main(){
int x,y,n;char m[103][103];cin>>x>>y;
for(int i=1;i<=x;i++)for(int j=1;j<=y;j++)cin>>m[i][j];
for(int i=1;i<=x;i++){for(int j=1;j<=y;j++){
if(m[i][j]=='*'){cout<<'*';continue;}n=0;
if(m[i-1][j-1]=='*')n++;if(m[i][j-1]=='*')n++;if(m[i+1][j-1]=='*')n++;
if(m[i-1][j]=='*')n++;if(m[i+1][j]=='*')n++;
if(m[i-1][j+1]=='*')n++;if(m[i][j+1]=='*')n++;if(m[i+1][j+1]=='*')n++;
cout<<n;}cout<<endl;
}return 0;
}
Python:
a,b=[int(i) for i in input().split(' ')];m=[['' for i in range(b+2)]]
for i in range(a):
m.append(['']+[i for i in input()]+[''])
m.append(m[0])
for i in range(1,a+1):
for j in range(1,b+1):
if m[i][j]=='*':continue
n=0
if m[i-1][j-1]=='*':n+=1
if m[i][j-1]=='*':n+=1
if m[i+1][j-1]=='*':n+=1
if m[i-1][j]=='*':n+=1
if m[i+1][j]=='*':n+=1
if m[i-1][j+1]=='*':n+=1
if m[i][j+1]=='*':n+=1
if m[i+1][j+1]=='*':n+=1
m[i][j]=str(n)
for i in m[1:-1]:
print(''.join(i))
这里空空如也

有帮助,赞一个