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;

}

相关推荐
ADDDDDD_Trouvaille20 小时前
2026.2.20——OJ92-94题
c++·算法
宇木灵20 小时前
C语言基础-四、函数
c语言·开发语言·前端·学习
hansang_IR20 小时前
【题解】类欧几里得算法
c++·数学·算法·类欧几里得
陈天伟教授20 小时前
人工智能应用- 人工智能交叉:06.解析蛋白质宇宙
人工智能·神经网络·算法·机器学习·推荐算法
We་ct20 小时前
LeetCode 114. 二叉树展开为链表:详细解题思路与 TS 实现
前端·数据结构·算法·leetcode·链表·typescript
像素猎人20 小时前
范围for语法(除for循环/while循环/do...while循环的第四种循环)
数据结构·算法
20 小时前
2.20进制转化,表达式求值,删除字符
开发语言·c++·算法
追随者永远是胜利者20 小时前
(LeetCode-Hot100)461. 汉明距离
java·算法·leetcode·职场和发展·go
爱编码的小八嘎20 小时前
第3章 Windows运行机理-3.1 内核分析(4)
c语言
郝学胜-神的一滴20 小时前
单例模式:从经典实现到Vibe Coding时代的思考
开发语言·c++·程序人生·单例模式·设计模式·多线程