九度 oj 题目1161:Repeater
来源:互联网 发布:大数据新闻报道 编辑:程序博客网 时间:2024/06/06 18:25
http://ac.jobdu.com/problem.php?pid=1161
#include <stdio.h>static int N,Q; static char Map[3001][3001];static char Template[6][6];int myPow(int n,int q){ int m = 1; while(q--){ m*=n; } return m;} void make_map(int left,int up,int right,int down,int q,bool mark){ //printf("q:%d\n",q); if(q == 1){ for (int i = up; i < down ; ++i) { for (int j = left ; j < right ; j++) { Map[i][j]= mark? Template[i-up][j-left]:' '; } //printf("\n"); } return ; } q--; for (int i = 0; i < N; ++i) { for (int j = 0; j < N; ++j) { make_map(left+j*myPow(N,q),up+i*myPow(N,q),left+(j+1)*myPow(N,q),up+(i+1)*myPow(N,q),q,mark&&Template[i][j]!=' '); } } } int main(){ //freopen("in/1161.in","r",stdin); //freopen("out/1161.out","w",stdout); while( scanf("%d",&N) && N!=0 ){ getchar(); for (int i = 0; i < N; ++i) { for (int j = 0; j< N; j++) { scanf("%c",&Template[i][j]); } getchar(); } scanf("%d",&Q); getchar(); //if(--ncase == 0) break; make_map(0,0,myPow(N,Q),myPow(N,Q),Q,true); for (int i = 0; i < myPow(N,Q); ++i) { for (int j = 0; j< myPow(N,Q); j++) { printf("%c",Map[i][j]); } printf("\n"); } } }
0 0
- 九度 oj 题目1161:Repeater
- 【学习笔记】〖九度OJ〗题目1161:Repeater
- 九度oj-1161:Repeater
- 九度OJ 1161:Repeater(复制器) (递归)
- 九度OJ 题目1029
- 九度OJ 题目1018
- 九度OJ 题目1002
- 九度OJ 题目1058:反序输出
- 九度OJ 题目1062:分段函数
- 九度OJ 题目1063:整数和
- 九度OJ 题目1066:字符串排序
- 九度OJ 题目1089:数字反转
- 九度OJ 题目1098:字母统计
- 九度OJ 题目1032:ZOJ
- 九度OJ 题目1115:数字求和
- 九度OJ 题目1022:游船出租
- 九度OJ 题目1206:字符串连接
- 九度OJ 题目1192:回文字符串
- 反射——Java高级开发必须懂的
- Window下LDAP的安装和配置
- 【数据库开发】Redis数据库设置密码
- Selenium定位属性自动切换的实现方法
- 半年总结—遇见未知的自己
- 九度 oj 题目1161:Repeater
- 用C语言实现(扫雷游戏)
- WebStorm快捷键(Mac版)
- 使用json-server
- [生存志] 第123节 热疟风痹病能
- c/c++ static关键字的总结
- 第66篇 摄像头屏蔽(六)及PHP发送电子邮件
- <a>中调用自定义JS函数传值出现异常
- Android LinearLayout使用