36B - Fractal

思路:分形

代码:

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
#define mem(a,b) memset(a,b,sizeof(a)) char mp[][];
char c[][];
void dfs1(int x,int y,int k,char color){
if(k==){
mp[x][y]=color;
return ;
}
if(color=='.'){
dfs1(x,y,k-,c[][]);
dfs1(x+pow(,k-),y,k-,c[][]);
dfs1(x,y+pow(,k-),k-,c[][]);
dfs1(x+pow(,k-),y+pow(,k-),k-,c[][]);
}
else{
dfs1(x,y,k-,'*');
dfs1(x+pow(,k-),y,k-,'*');
dfs1(x,y+pow(,k-),k-,'*');
dfs1(x+pow(,k-),y+pow(,k-),k-,'*');
}
}
void dfs2(int x,int y,int k,char color){
if(k==){
mp[x][y]=color;
return ;
}
if(color=='.'){
dfs2(x,y,k-,c[][]);
dfs2(x+pow(,k-),y,k-,c[][]);
dfs2(x,y+pow(,k-),k-,c[][]);
dfs2(x+pow(,k-),y+pow(,k-),k-,c[][]);
dfs2(x+*pow(,k-),y,k-,c[][]);
dfs2(x+*pow(,k-),y+pow(,k-),k-,c[][]);
dfs2(x+*pow(,k-),y+*pow(,k-),k-,c[][]);
dfs2(x,y+*pow(,k-),k-,c[][]);
dfs2(x+pow(,k-),y+*pow(,k-),k-,c[][]);
}
else{
dfs2(x,y,k-,'*');
dfs2(x+pow(,k-),y,k-,'*');
dfs2(x,y+pow(,k-),k-,'*');
dfs2(x+pow(,k-),y+pow(,k-),k-,'*');
dfs2(x+*pow(,k-),y,k-,'*');
dfs2(x+*pow(,k-),y+pow(,k-),k-,'*');
dfs2(x+*pow(,k-),y+*pow(,k-),k-,'*');
dfs2(x,y+*pow(,k-),k-,'*');
dfs2(x+pow(,k-),y+*pow(,k-),k-,'*');
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie();
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
int n,k;
cin>>n>>k;
for(int i=;i<=n;i++)cin>>(c[i]+);
if(n==){
dfs1(,,k,'.');
for(int i=;i<=pow(,k);i++){
puts(mp[i]+);
}
}
else{
dfs2(,,k,'.');
for(int i=;i<=pow(,k);i++){
puts(mp[i]+);
}
}
return ;
}

Codeforces 36B - Fractal的更多相关文章

  1. python爬虫学习(5) —— 扒一下codeforces题面

    上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...

  2. 【Codeforces 738D】Sea Battle(贪心)

    http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...

  3. 【Codeforces 738C】Road to Cinema

    http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...

  4. 【Codeforces 738A】Interview with Oleg

    http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...

  5. CodeForces - 662A Gambling Nim

    http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...

  6. CodeForces - 274B Zero Tree

    http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...

  7. CodeForces - 261B Maxim and Restaurant

    http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...

  8. CodeForces - 696B Puzzles

    http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...

  9. CodeForces - 148D Bag of mice

    http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...

随机推荐

  1. TCP 之 RST 原因分析

    5. 往一个对端已经关闭的套接字上写入数据会收到一个RST信号 1.发送端的 发送缓冲区还有数据,但接收端tcp的接收通道已关闭 2. SYN到达某端口但此端口上没有正在监听的服务器.对于UDP,当一 ...

  2. 【题解】Luogu P1648 看守

    原题传送门:P1648 看守 这题目让求得的是d维( d <=4 )空间中n个点( 2 <= N <= 1000000 )之间最大的哈曼顿距离 模拟,emm,能拿30分,不错 因为d ...

  3. oracle_sqlplus命令行乱码问题解决

    在linux以及unix中,sqlplus的上下左右.回退无法使用,会出现乱码情况. 而rlwrap这个软件就是用来解决这个的. 首先下载rlwrap包:https://linux.linuxidc. ...

  4. 20145326蔡馨熤《网络对抗》—— Web基础

    20145326蔡馨熤<网络对抗>—— Web基础 1.实验后回答问题 (1)什么是表单. 表单是一个包含表单元素的区域,表单元素是允许用户在表单中输入信息的元素,表单在网页中主要负责数据 ...

  5. Zabbix poller processes more than 75% busy

    Centos7.5  在设置网络监控的时候zabbix提示Zabbix poller processes more than 75% busy 问题 原因 默认只开启一个Discoverers进程,就 ...

  6. ant____<project>标签的使用与含义

    <project> 标记项目,例如: <project name = "java-ant project" default = "run"&g ...

  7. 在Linux系统上卸载playOnLinux

    1.remove just the playonlinux package itself. sudo apt-get remove playonlinux 2.remove the playonlin ...

  8. freeswitch 获取app和api帮助

    通过show显示帮助命令 输出xml格式:show calls as xml 输出json格式 列出所有:show codec 解释: codec - 列出所有编码 endpoint - 列出所有en ...

  9. linux内核中的hisi_sas是什么?

    答: 是一个HISILICON SAS 控制器驱动(HISILICON SAS controller driver)

  10. Ubuntu18.04 安装搜狗输入法后无法启动的问题

    ibus 改选成fcitx后搜狗输入法照样没出来. 这里需要im-config 没有的话需要安装: sudo apt install im-config 然后在Terminal中执行 im-confi ...