Codeforces 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的更多相关文章
- python爬虫学习(5) —— 扒一下codeforces题面
上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...
- 【Codeforces 738D】Sea Battle(贪心)
http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...
- 【Codeforces 738C】Road to Cinema
http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...
- 【Codeforces 738A】Interview with Oleg
http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...
- CodeForces - 662A Gambling Nim
http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...
- CodeForces - 274B Zero Tree
http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...
- CodeForces - 261B Maxim and Restaurant
http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...
- CodeForces - 696B Puzzles
http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...
- CodeForces - 148D Bag of mice
http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...
随机推荐
- 创建docker镜像的私有仓库
CentOS Linux release 7.2.1511 Docker version 17.03.1-ce 安装registry镜像 同时安装一个比较小的镜像alpine待会作测试用: # doc ...
- oracle 12c多租户下的日常操作变化
Oracle 12c创建用户时出现“ORA-65096: invalid common user or role name”的错误 在oracle中,引入了多租户概念,以前是一个instance对应一 ...
- 一句话说清楚cache和buffer
我们说真正掌握和理解一个定义或者概念或者技术点最好的方式就是能够直观的展现它是什么样的,或者像什么样的,关于cache和buffer,刚刚看到一个极为显而易见的类比解释. buffer就像弹簧,用于减 ...
- markdown 换行
基本语法 basic grammar line break
- GDI的 点 线 面 双缓冲 位图的绘制
1.输出文本 // 输出文本 ,,)); //设置字体颜色,但最后都要返回原来的字体格式 COLORREF clrBackColor = SetBkColor(hDC, RGB(,,)); //设置背 ...
- Java 判断字符串是否为空的四种方法、优缺点与注意事项
以下是Java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s));方法二: ...
- opencv学习之路(9)、对比度亮度调整与通道分离
一.对比度亮度调整 #include<opencv2/opencv.hpp> using namespace cv; #define WIN_NAME "输出图像" M ...
- 大R玩家体验时空猎人折扣平台多角度分析
<时空猎人>讲述了时空裂隙的出现,导致大批魔物入侵阿达拉大陆.玩家可扮演狼人.机械师.异能者.冰魄等职业,与这片大陆的人们保卫家园. 游戏拥有宠物.等战斗培养元素,还引入竞技场.攻城战等P ...
- python --- 25 模块和包
一.模块 1.导入方式 自己创建的模块名称 切不可和 内置模块的一样 ① import 模块 ② import 模块 as 名 设置在此空间的名称 ③ from 模块 import ...
- python --- 07 补充( join 删除和添加 fromkeys ) 深浅拷贝
一.基本数据类型补充 1.join() "*".join("马虎疼") # 马*虎*疼 把传递进去的参数进行迭代. 获取到的每个元素和前面的*进行拼接. 得到 ...