규도자 개발 블로그
[백준/2441/자바(Java)] 별찍기 - 4 본문
문제
첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제
하지만, 오른쪽을 기준으로 정렬한 별 (예제 참고)을 출력하시오.
입력
첫째 줄에 N (1<=N<=100)이 주어진다.
출력
첫째 줄부터 N번째 줄 까지 차례대로 별을 출력한다.
입출력 예
입력 | 출력 |
---|---|
5 | ***** **** *** ** * |
풀이
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int a = scan.nextInt();
int b = a;
if (!(1 <= a && a <= 100)) {
System.exit(0);
}
for(; a>0 ; a--) {
for(int i = b; i > a; i--) {
System.out.print(" ");
}
for(int i = 0; i < a; i++) {
System.out.print("*");
}
System.out.println();
}
}// end of main
}
설명
입력한 자연수만큼 별을 찍는데 반대순서로 찍으면서 또 우정렬까지 해야하는 문제이다. 폰트문제로 본 글에서는 별모양이 꼭 역피라미드 형태 처럼 보이지만 모노폰트로 출력하는 터미널창에서는 정상적으로 우정렬되어 출력될 것이다. 여태까지 했던 별찍기 문제들의 응용이라 할 수 있는데, 배열을 거꾸로 출력하고 우정렬 하는 갯수만큼 공백(' '
)을 넣어준다고 생각하면 쉽다.
'알고리즘 > 풀이' 카테고리의 다른 글
[백준/2739/자바(Java)] 구구단 (0) | 2018.09.17 |
---|---|
[백준/2557/자바(Java)] Hello World (0) | 2018.09.17 |
[백준/2440/자바(Java)] 별찍기 - 3 (0) | 2018.09.17 |
[백준/2439/자바(Java)] 별찍기 -2 (0) | 2018.09.16 |
[백준/2438/자바(Java)] 별찍기 - 1 (0) | 2018.09.16 |
Comments