ACM模式java练习

import java.util.*;
import java.lang.*;

public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        while(sc.hasNext()) {
            String line = sc.nextLine();
            if(line.equals("@")){
                break;
            }
            String[] inputs = line.split(" ");
            char ch = inputs[0].charAt(0);
            int n = Integer.valueOf(inputs[1]);
            //输出图案
            printPattern(ch, n);
        }
        sc.close();
    }
    
    private static void printPattern(char ch, int n) {
        //输出第一行
        print(' ', n - 1);
        System.out.println(ch);
        
        //输出第二行到倒数第二行
        for(int i = 2; i < n; i++) {
            print(' ', n - i); //先输出前面的空格
            System.out.print(ch); //再输出第一个 A
            print(' ',2 * i - 3);   //输出中间的空格(2*2 -3 = 1 第二行中间一个空格)
            System.out.println(ch);   //再输出第二个 A
        }
        
        //输出最后一行
        if(n > 1) {
        print(ch, 2 * n - 1);
        System.out.println(); 
        }
        System.out.println(); 
    }
    
    private static void print(char ch, int count) {
        while(count-- > 0) {
            System.out.print(ch);
        }
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务