import java.util.LinkedList; import java.util.List; import java.util.Scanner; import java.util.Stack; public class Main1 { public static void main(String[] args){ Scanner cin = new Scanner(System.in); while(cin.hasNext()){ String s = cin.nextLine(); if(s == null){ System.out.println(); System.out.println(); break; } List<Character> list = new LinkedList<Character>(); for(int i = 0; i<s.length();i++){ if(s.charAt(i) >='A' && s.charAt(i) <='Z'){ list.add(s.charAt(i)); } } int len = list.size(); int treeHeight = 0; int tempheight = len; while(tempheight > 0){ treeHeight ++; tempheight >>= 1; } int index = 0; // print original tree for(int i = 0; i<treeHeight; i++){ int space = 1<< (treeHeight-1-i); int charnum = 1<<i; //print char for(int j = 0; j<charnum && index <list.size(); j++){ printSpace(space-1); System.out.print(list.get(index)); index ++; printSpace(space); } System.out.println(); // print / and \  if(index >= list.size()){ break; } for(int j = 0; j<space/2; j++){ for(int k = 0; k<charnum; k++){ printSpace(space-2-j); System.out.print("/"); printSpace(2*j+1); System.out.print("\\"); printSpace(space-2-j+1); } System.out.println(); } } System.out.println(); // print reverse tree index = 0; for(int i = 0; i<treeHeight; i++){ int space = 1<< (treeHeight-1-i); int charnum = 1<<i; Stack<Character> stack = new Stack<Character>(); for(int j = 0; j<charnum; j++){ if(index <list.size()){ stack.push(list.get(index)); index ++; }else{ stack.push(' '); } } //print char while(!stack.isEmpty()){ printSpace(space-1); System.out.print(stack.pop()); printSpace(space); } System.out.println(); // print / and \  if(index >= list.size()){ break; } for(int j = 0; j<space/2; j++){ for(int k = 0; k<charnum; k++){ printSpace(space-2-j); System.out.print("/"); printSpace(2*j+1); System.out.print("\\"); printSpace(space-2-j+1); } System.out.println(); } } } } // print space public static void printSpace(int n){ for(int i = 0; i< n; i++){ System.out.print(" "); } } }
点赞 2

相关推荐

09-04 00:41
中山大学 C++
鼠鼠能上岸吗:进行中是秋招大项目进行中,你还可以选别的岗位;已结束是这个岗位流程结束了;筛选中就是在简历筛选环节没hr捞
投递美团等公司10个岗位
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务