publicstaticvoidmain(String[] args) { Scannerscanner=newScanner(System.in); // 循环输入,虽然没说循环输入,但就是循环输入 while (scanner.hasNext()) { inth= scanner.nextInt(); // 输出行 for (inti=0; i < h; i++) { // 输出列 for (intj=0; j < h + (h - 1) * 2; j++) { if (j < h + (h - 1) * 2 - (h + i * 2)) { System.out.print(" "); } else { System.out.print("*"); } } if (i != h) { System.out.println(); } } } } }
问题 B: Hello World for U
题目
题目描述
Given any string of N ( >= 5 ) characters, you are asked to form the characters into the shape of U. For example, “helloworld” can be printed as:
h d
e l
l r
lowo
That is, the characters must be printed in the original order, starting top-down from the left vertical line with n1 characters, then left to right along the bottom line with n2 characters, and finally bottom-up along the vertical line with n3 characters. And more, we would like U to be as squared as possible – that is, it must be satisfied that n1=n3=max{k∣k<=n2forall3<=n2<=N} with n1+n2+n3−2=N.
输入
Each input file contains one test case. Each case contains one string with no less than 5 and no more than 80 characters in a line. The string contains no white space.
输出
For each test case, print the input string in the shape of U as specified in the description.