【HDOJ】1332 LC-Display
水题。
#include <cstdio>
#include <cstring>
#include <cstdlib> #define MAXN 11
#define LEFT 1
#define RIGHT 2
#define BOTH 3 char lcd[][MAXN][*MAXN++][MAXN++];
int rr[MAXN];
int cc[MAXN]; void addR(int x, int i, int j) {
int k; for (k=; k<cc[i]-; ++k)
lcd[x][i][j][k] = '-';
} void addC(int x, int i,int j, int v) {
if (v & LEFT)
lcd[x][i][j][] = '|';
if (v & RIGHT)
lcd[x][i][j][cc[i]-] = '|';
} void init() {
int i, j, k;
int n; for (i=; i<=; ++i) {
rr[i] = *i+;
cc[i] = i+;
} memset(lcd, ' ', sizeof(lcd)); for (k=; k<; ++k) {
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
lcd[k][i][j][cc[i]] = '\0';
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==rr[i]-) {
addR(n, i, j);
} else if (j == i+) {
/*do nothing*/;
} else {
addC(n, i, j, BOTH);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
/*do nothing*/;
} else {
addC(n, i, j, RIGHT);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
addR(n, i, j);
} else {
if (j < i+)
addC(n, i, j, RIGHT);
else
addC(n, i, j, LEFT);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
addR(n, i, j);
} else {
addC(n, i, j, RIGHT);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==rr[i]-) {
/*do nothing*/;
} else if (j == i+) {
addR(n, i, j);
} else {
if (j < i+)
addC(n, i, j, BOTH);
else
addC(n, i, j, RIGHT);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
addR(n, i, j);
} else {
if (j < i+)
addC(n, i, j, LEFT);
else
addC(n, i, j, RIGHT);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
addR(n, i, j);
} else {
if (j < i+)
addC(n, i, j, LEFT);
else
addC(n, i, j, BOTH);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j==) {
addR(n, i, j);
} else if (j==i+ || j==rr[i]-) {
/*do nothing*/;
} else {
addC(n, i, j, RIGHT);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
addR(n, i, j);
} else {
addC(n, i, j, BOTH);
}
}
} //
n = ;
for (i=; i<=; ++i) {
for (j=; j<rr[i]; ++j) {
if (j== || j==i+ || j==rr[i]-) {
addR(n, i, j);
} else {
if (j < i+)
addC(n, i, j, BOTH);
else
addC(n, i, j, RIGHT);
}
}
}
} void output(int n) {
int i, j, k; for (i=; i<; ++i) {
for (j=; j<rr[n]; ++j) {
printf("%s\n", lcd[i][n][j]);
}
printf("\n\n");
}
printf("output finish\n");
} int main() {
int n;
int i, j, k;
char s[]; #ifndef ONLINE_JUDGE
freopen("data.in", "r", stdin);
freopen("data.out", "w", stdout);
#endif init();
//output(1); while (scanf("%d %s", &n, s) != EOF) {
if (n== && s[]=='' && s[]=='\0')
break;
for (j=; j<rr[n]; ++j) {
for (i=; s[i]; ++i) {
if (i)
printf(" %s", lcd[s[i]-''][n][j]);
else
printf("%s", lcd[s[i]-''][n][j]);
}
printf("\n");
}
printf("\n");
} return ;
}
【HDOJ】1332 LC-Display的更多相关文章
- 【HDOJ】4729 An Easy Problem for Elfness
其实是求树上的路径间的数据第K大的题目.果断主席树 + LCA.初始流量是这条路径上的最小值.若a<=b,显然直接为s->t建立pipe可以使流量最优:否则,对[0, 10**4]二分得到 ...
- 【HDOJ】4605 Magic Ball Game
思路1:树状数组+离线处理,对所有的w离散化处理,边dfs边使用树状数组更新左右w的情况.思路2:主席树,边bfs边建树.结点信息存储cnt,然后在线查询.树状数组. /* 4605 */ #incl ...
- 【HDOJ】4601 Letter Tree
挺有意思的一道题,思路肯定是将图转化为Trie树,这样可以求得字典序.然后,按照trie的层次求解.一直wa的原因在于将树转化为线性数据结构时要从原树遍历,从trie遍历就会wa.不同结点可能映射为t ...
- 【HDOJ】4426 Palindromic Substring
综合性很强的一道题目,结合manacher,后缀数组,哈希,RMQ,二分可解.基本思路是通过manacher可以找到所有可能的回文串,哈希去重,后缀数组二分找数目.最后暴力求解.需要注意kth需要为_ ...
- 【HDOJ】3948 The Number of Palindromes
后缀数组求不重复回文子串数目.注意dp数组. /* 3948 */ #include <iostream> #include <sstream> #include <st ...
- 【HDOJ】4691 Front compression
后缀数组基础题目,dc3解. /* 4691 */ #include <iostream> #include <sstream> #include <string> ...
- 【HDOJ】2459 Maximum repetition substring
后缀数组+RMQ. /* 2459 */ #include <iostream> #include <sstream> #include <string> #inc ...
- 【HDOJ】1648 Keywords
PE的注意,如果没有满足条件的不输出空格.简单模拟,暴力解. /* */ #include <iostream> #include <sstream> #include < ...
- 【HDOJ】【3506】Monkey Party
DP/四边形不等式 裸题环形石子合并…… 拆环为链即可 //HDOJ 3506 #include<cmath> #include<vector> #include<cst ...
随机推荐
- Jenkins的错误“error fetching remote repo origin”的问题解决
错误如上,解决方法收集,可以尝试以下方法: http://stackoverflow.com/questions/38391601/jenkins-error-error-fetching-remot ...
- Android-Uiautomator:[5]停止monkey测试
方法/步骤 1 其实停止很简单,无非就是结束掉monkey的进程即可 如何停止呢 2 ps命令 查找uiautomator的进程 打开cmd命令行窗口 输入: adb shell ps | grep ...
- [Angular 2] Using a Value from the Store in a Reducer
RxJS allows you to combine streams in various ways. This lesson shows you how to take a click stream ...
- DBMS_STATS常用方法(收集oracle信息)
–收集数据库信息EXEC DBMS_STATS.gather_database_stats;EXEC DBMS_STATS.gather_database_stats(estimate_percent ...
- Environment Configuration Files
Environment Configuration Files When a user logs in, an environment is created for that user automat ...
- VNC-Server installation on CentOS 7
参考资料: https://www.howtoforge.com/vnc-server-installation-on-centos-7 https://linux.cn/article-5335-1 ...
- ViewPage 一次滑动多页
效果 size是3的倍数时 其他情况下 初始化 private List<HonerUserBean> anchorList; private ViewPager vp ...
- hdu 5105
题意: y=|a*x^3+b*x^2+c*x+d| 求y的最大值? 题目是bc上的,之前写的时候,没考虑0的情况(太笨了).... 水题吧.... AC代码: #include <iost ...
- css书写步骤
CSS整体书写步骤1:CSS RESET 重置2:CSS GLABAL 全局属性3: CSS分模块属性,(先写默认样式和设计图相差最大的部分,先大块布局,后细致调整) <style>/*C ...
- Linux下快速搭建DNS服务器
一.术语解释:TTL Time To Live 缓冲保留时间ORIGIN 属于哪个域@ 代指域IN 开头需要空格SOA 一行记录类型的开始参数:forwarders {} 指向自己无法解析的域名跳转到 ...