C - Sierpinski carpet(abc357)

题意:

  • 中央区块完全由白色单元格组成。
    • 其他八个区块是 (𝐾−1)(K−1) 级地毯。

给你一个非负整数 N 。

请按照指定格式打印 N 级地毯。

分析:先把地毯分成九块

除了中间那块,其它都是由左上角那块延申出来的

#include<bits/stdc++.h>

using namespace std;

char a[1000][1000];

int main(){

int n;cin>>n;

a[1][1]='#'; int c=1;

for(int i=1;i<=pow(3,n);i++){

a[i][0]='#';a[0][i]='#';

}

for(int z=1;z<=n;z++){

c*=3;

for(int i=1;i<=c;i++){

for(int j=1;j<=c;j++){

if(i>c/3||j>c/3){//除了左上角那块

if((i>c/3&&i<=2*(c/3))&&(j>c/3&&j<=2*(c/3))){//中间那块

a[i][j]='.';

}

else if(i<=c/3&&j>c/3){

a[i][j]=a[i][j%(c/3)];

}

else a[i][j]=a[i%(c/3)][j];

}

}

}

}

for(int i=1;i<=c;i++){

for(int j=1;j<=c;j++){

cout<<a[i][j];

}

cout<<endl;

}

return 0;

}

相关推荐
NZT-48几秒前
C++基础笔记(一)迭代器和vector
开发语言·c++·笔记
小猪咪piggy2 分钟前
【算法】leetcode 100 二叉树
数据结构·算法·leetcode
橘颂TA3 分钟前
【剑斩OFFER】算法的暴力美学——排序数组
算法·leetcode·动态规划
C雨后彩虹3 分钟前
数组二叉树
java·数据结构·算法·华为·面试
zzcufo3 分钟前
QObject::startTimer: Timers cannot be started from another thread
网络·数据库·c++·windows
明洞日记5 分钟前
【数据结构手册007】集合结构 - set与unordered_set的专精解析
数据结构·c++·set
算法如诗5 分钟前
**智能建模算法(GA-ELM)**与**多目标优化算法(NSGA-Ⅱ)** 相结合,用于解决**42CrMo钢表面激光熔覆工艺优化**问题
算法
Wild_Pointer.7 分钟前
数据结构与算法精解:时间序列降采样算法LTOB
c++·算法
晚晶8 分钟前
【Linux】opencv4.9.0静态库编译,开启opencl和EIGEN矩阵运算
linux·c++·opencv·矩阵·opencl
papership8 分钟前
【入门级-算法-9、动态规划:动态规划的基本思路】
算法·动态规划