1366: 绿地装饰

时间限制: 1  内存限制: 128 MB

题目描述

湖南中医药大学坐落于中国历史文化名城长沙,是湖南省重点建设本科院校,是全国首批设立国家级重
点学科的高校,也是首批招收博士研究生、留学生及港澳台学生的中医药院校。学校现有 2 个校区,占
地面积 1393 亩,建筑面积 52 万平方米,主校区依岳麓南坡,临湘江西岸,环境幽雅,风光秀丽,是求
学成才的理想之地。
校园景观设计师小 W 的主要工作就是植被环境的设计维护,他有一个 N×N 的模板图,他创作景观的步
骤如下:
1、将当前的绿地分成 N×N 小块,再按照模板图添加装饰(黑色表示有装饰,白色表示没有);
2、对于每个白色(未被装饰)的地块,递归操作 1,应用模板图,即分成更小的 N×N 块,继续进行装
饰,而黑色(已装饰)的地块则不必操作。

下图是某次装饰过程的示意图。

现在你的任务是求出 K 次递归后的绿地状态。

输入

单组数据。
第一行两个数 N,K,如题意中的描述。
接下来是一个 N×N 的模板图,’ . ’ 表示白色,’ * ’ 表示黑色。
2 ≤ n ≤ 3
1 ≤ k ≤ 5

输出

输出一个 N K×N K 的矩阵表示答案,不允许有多余的空行或空格。

样例输入

2 3
.*
..

样例输出

.*******
..******
.*.*****
....****
.***.***
..**..**
.*.*.*.*
........

思路:

保存输入的模板后,用一个中间数组去更新每次的装饰过程(数据小,暴力模拟)

AC Code:

#include <cstdio>
#include <cmath>
#include<algorithm>
#include<iostream>
#include<cstring>
#include<map>
#include<queue>
#include<climits>
#define lson l, m, rt << 1
#define rson m + 1, r, rt << 1 | 1
using namespace std;
static const int MAX_N = 2e5 + 5;
char form[5][5];
char maps[255][255];
char res[255][255];
int main(){int n, q;scanf("%d%d", &n, &q);for(int i = 0; i < n; i++){scanf("%s", form[i]);}res[0][0] = '.';int N = 1;while(q--){for(int i = 0; i < N; i++){for(int j = 0; j < N; j++){if(res[i][j] == '.'){for(int k = 0; k < n; k++){for(int t = 0; t < n; t++){maps[i * n + k][j * n + t] = form[k][t];}}}else {for(int k = 0; k < n; k++){for(int t = 0; t < n; t++){maps[i * n + k][j * n + t] = '*';}}}}}N *= n;for(int i = 0; i < N; i++){for(int j = 0; j < N; j++){res[i][j] = maps[i][j];}}}for(int i = 0; i < N; i++){printf("%s\n", res[i]);}return 0;
}

HNUCM 1366 绿地装饰解题报告 (模拟)相关推荐

  1. CCF 201609-3 炉石传说 解题报告 模拟

    题目: 问题描述 试题编号: 201612-3 试题名称: 炉石传说 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 <炉石传说:魔兽英雄传>(Hearthston ...

  2. USACO1.3.4 Prime Cryptarithm 牛式 解题报告(模拟)

    Description 下面是一个乘法竖式,如果用我们给定的那n个数字来取代*,可以使式子成立的话,我们就叫这个式子牛式. * * *x * *-------* * ** * *-------* * ...

  3. [解题报告] CSDN竞赛第六期

    CSDN编程竞赛报名地址:https://edu.csdn.net/contest/detail/16 1. 严查枪火 题目 X国最近开始严管枪火. 像是"ak", "m ...

  4. 10.30 NFLS-NOIP模拟赛 解题报告

    总结:今天去了NOIP模拟赛,其实是几道USACO的经典的题目,第一题和最后一题都有思路,第二题是我一开始写了个spfa,写了一半中途发现应该是矩阵乘法,然后没做完,然后就没有然后了!第二题的暴力都没 ...

  5. 2016.7.15 NOIP2014模拟试题解题报告(又名:方克顺和他的正余弦朋友们(

    我发现自从我开始写博客以后OI成绩上升很明显啊orzzz,继续保持继续保持(然而昨晚上开夜车到十二点,感觉这次没发挥好)(下次没考好就尴尬了)(所以一定要考好!),嗯这次考得还是很不错的,也深入思考了 ...

  6. CodeForces-1016C Vasya And The Mushrooms(模拟+思维+前缀和的前缀和) 解题报告 Apare_xzc

    CodeForces-1016C Vasya And The Mushrooms(模拟+思维+二重前缀和 ) 解题报告 xzc 2019/4/7 这周周赛的C题:wyt学姐的恶意   这道题周赛的时候 ...

  7. 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  8. 解题报告(三)多项式求值与插值(拉格朗日插值)(ACM / OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  9. 解题报告(五)组合计数(ACM / OI)超高质量题解

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

最新文章

  1. 接Window服务(二)
  2. Linux查看实时带宽流量情况
  3. 分享一个开源博客-Jackblog
  4. linux的mtd架构分析【转】
  5. 拖动改变Table的列宽度
  6. mysql主从同步默认延迟_减少mysql主从数据同步延迟问题的详解
  7. Ubuntu Linux 下文件名乱码(无效的编码)的快速解决办法
  8. No Fine-Tuning, Only Prefix-Tuning
  9. UIKit应用 - Swift 版本: 3.让UITableViewCell的背景色渐变
  10. Kotlin 学习笔记(七)—— Kotlin类与对象之属性与字段
  11. 解决Tensorflow2.0出现:AttributeError: module 'tensorflow' has no attribute 'get_default_graph'的问题
  12. CentOS7安装Oracle11.2.0.4
  13. 中国计算机病毒发展简史
  14. C#编写NotifyIcon
  15. 使用tkinter canvas绘制中国象棋棋盘
  16. 渗透工具-fscan内网安全漏洞扫描
  17. 获取浏览器中鼠标选中的文本内容
  18. 让犯罪有迹可寻,区块链存证被最高人民法院认可
  19. 幼儿园教师怎么教计算机知识,幼儿园教师的专业知识到底包含哪些,家长必知!...
  20. 转发乐评IV(惘闻)的评论:污水塘的世界

热门文章

  1. MySQL报错1677
  2. MATLAB算法实战应用案例精讲-【语音识别】语音合成(附python代码实现)
  3. 《程序员的创世传说》第三节 魔王与2012
  4. 强化学习:训练加速技巧
  5. 牛牛的算术(公式推导)
  6. LQ0266 巧排扑克牌【模拟】
  7. BetterTouchTool使用指南——TouchBar篇
  8. itunes store服务中断_终于明白为什么那么多人吐槽apple的态度了.临时工一样的中国区itunes store客服......
  9. 薛定谔 | 诱导契合对接(结合位点柔性)
  10. Ant Design Vue DatePicker 日期选择框 限制可选时间