1 条题解
-
0
C :
#include<stdio.h> #include<string.h> #define MAX 100 int main() { int a[MAX][MAX]; int hang,lie; int times; while(scanf("%d%d%d",&hang,&lie,×)!=EOF){ for(int m=0;m<lie;m++) for(int j=0;j<hang;j++){ a[m][j]=0; } while(times--){ int i,k; scanf("%d%d",&i,&k); i=i-1; k=k-1; a[i][k]=-10000; if(i-1>=0) a[i-1][k]++; if(i+1<hang) a[i+1][k]++; if(k+1<lie) a[i][k+1]++; if(k-1>=0) a[i][k-1]++; if((i+1<hang)&&(k+1<lie)) a[i+1][k+1]++; if((i+1<hang)&&(k-1>=0)) a[i+1][k-1]++; if((i-1>=0)&&(k+1<lie)) a[i-1][k+1]++; if((i-1>=0)&&(k-1>=0)) a[i-1][k-1]++; } for(int j=0;j<hang;j++) for(int i=0;i<lie;i++){ if(a[i][j]<0) printf("*"); else printf("%d",a[i][j]); if(i==hang-1) printf("\n"); else printf(" "); } } return 0; }
C++ :
#include<iostream> #include<cstring> using namespace std; int dx[3]={-1,0,1}; int dy[3]={-1,0,1}; int main() { int n,m,k, i,j; while (cin>>n>>m>>k) { int s[10][10]={0}; while (k--) { int x,y; cin>>x>>y; s[x][y]=-1; for (i=0;i<3;i++) for (j=0;j<3;j++) { if (dx[i]!=0 || dy[j]!=0) if (s[x+dx[i]][y+dx[j]] != -1) s[x+dx[i]][y+dx[j]]++; } } for (i=1;i<=n;i++) { for (j=1;j<=m;j++) { if (s[i][j]==-1) cout<<"*"; else cout<<s[i][j]; if (j!=m) cout<<" "; } cout<<endl; } } return 0; }
- 1
信息
- ID
- 3456
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者