首页 > 其他 > 详细

蓝桥杯三月模拟赛第7题

时间:2020-03-21 15:46:17      阅读:60      评论:0      收藏:0      [点我收藏+]

题目是由g和*组成的地图。g代表草,每过一个月会从上下左右四个方向长一次。第一行输入n和m,代表行数列数,然后输入n行m列的字符,再输入k,k代表月份。要求输出k月后的地图

 1 #include<iostream>
 2 using namespace std;
 3 int main(){
 4     int n,m,k;
 5     cin>>n>>m;
 6     char a[1000][1000];
 7     int b[1000],c[1000];
 8     for(int i=0;i<n;i++){
 9         for(int j=0;j<m;j++){
10             cin>>a[i][j];
11         }
12     }
13     cin>>k;
14     int b1=0;
15     for(int i1=0;i1<k;i1++){
16         
17         for(int i=0;i<n;i++){
18             for(int j=0;j<m;j++){
19                 if(a[i][j]==g){        
20                     b[b1]=i;
21                     c[b1]=j; 
22                     b1++;
23                 }          
24             }
25         }
26         for(int i=0;i<b1;i++){
27                     a[b[i]-1][c[i]]=g;
28                     a[b[i]+1][c[i]]=g;
29                     a[b[i]][c[i]+1]=g;
30                     a[b[i]][c[i]-1]=g;
31         }              
32     }
33     for(int i=0;i<n;i++){
34         for(int j=0;j<m;j++){
35             cout<<a[i][j];
36         }
37         cout<<endl;
38     }
39 }       

技术分享图片

样例和结果,写的是o(n^3)的,应该只能过部分样例

蓝桥杯三月模拟赛第7题

原文:https://www.cnblogs.com/yuanhang110/p/12539399.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!