计蒜客 习题:升级版三角形

题目:

《计蒜客 习题:升级版三角形》

个人思路:

 三个变动的地方: 1.每行输出的个数 (跟行数有关)

                               2.每行空格的个数

                               3. (以ABCBA为例)分两次输出 先输出ABC 再输出后面BA

代码:
 

import java.util.*;



public class Main {
	
	
	public static void main(String[] args){
		Scanner scanner = new Scanner(System.in);
		char c = scanner.next().charAt(0);//获取字符
		
		if(c >= 'A') {
			int n = c -'A';//得到输出的总行数
			for(int i = 0 ;i <= n ; i++) {
				for(int l = 0; l <=n-i; l++) {//输出前面的空格
					System.out.print(" ");
				}
				for(int j = 0; j <= i; j++) {//输出ABC
					System.out.print((char)('A'+j));
				}
				for(int k  = i-1; k >=0; k -- ) {//输出BA
					System.out.print((char)('A'+k));
				}
				System.out.println();
			}
		}else {
			int n = c -'1';
			for(int i = 0 ;i <= n ; i++) {
				for(int l = 0; l <=n-i-1; l++) {
					System.out.print(" ");
				}
				for(int j = 0; j <= i; j++) {
					System.out.print((char)('1'+j));
				}
				for(int k  = i-1; k >=0; k -- ) {
					System.out.print((char)('1'+k));
				}
				System.out.println();
			}
			
		}
		
		System.out.println();
		
	}
}

 

 

 

 

点赞