https://www.acmicpc.net/problem/2439
[ 문제 ]
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.
[ 입력 ]
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
[ 출력 ]
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
[ 입출력 예시 ]
예제 입력 | 예제 출력 |
---|---|
5 | * ** *** **** ***** |
이중 for문을 사용하고 이전 [ 별 찍기 - 1 ]와 동일하게 바깥쪽은 행, 안쪽은 열을 처리하면 된다.
1. 보이지는 않지만
1번째 줄은 공백(" ")4개, 별()1개 = 총 5개
2번째 줄은 공백(" ")3개, 별()2개 = 총 5개
3번째 줄은 공백(" ")2개, 별()3개 = 총 5개
4번째 줄은 공백(" ")1개, 별()4개 = 총 5개
5번째 줄은 공백(" ")0개, 별()5개 = 총 5개
로 이루어져있다.
2. i는 0부터 시작하므로 예제 입력 값(line)을 받고 line - i - 1까지는 공백을,
i+1은 별")을 출력한다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int line = Integer.parseInt(br.readLine());
for(int i=0; i<line; i++) {
for(int j=0; j<line-i-1; j++) {
System.out.print(" ");
}
for(int j=0; j<i+1; j++) {
System.out.print("*");
}
System.out.println();
}
}
}