POJ - 2039. ToAndFro 竖型输出
题意
就是给你一个数 n
,和一串字符串,然后要你将这些字符串分成 n
列(蛇形),并且一竖一竖的打印;
解析
可以定义一个 bool
型变量,表示从左到右还是从右到左,然后,通过行列的关系输出即可。如果是往右边走,对应的下标关系就是 行数*n + 列数
,往左边走的就是 (行数+1)*n-列数-1
;
import java.io.BufferedInputStream;
import java.util.Scanner;
public class Main { //提交时改成 Main
public static void main(String[] args) {
Scanner in = new Scanner(new BufferedInputStream(System.in));
PrintStream out = System.out;
while (in.hasNext()) {
int n = in.nextInt();
if (n == 0)
break;
String str = in.next(); //读取// 一行字符串
char[] chs = str.toCharArray();
boolean toRight;
for (int j = 0; j < n; j++) {
toRight = true;
for (int i = 0; i < chs.length / n; i++) {
if (toRight) {
if ((i * n + j) < chs.length)
out.print(chs[(i) * n + j]);
toRight = false;
} else {
if (((i + 1) * n - j - 1) < chs.length)
out.print(chs[(i + 1) * n - j - 1]);
toRight = true;
}
}
}
out.println();
}
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论