문제
https://www.acmicpc.net/problem/2439
2439번: 별 찍기 - 2
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.
www.acmicpc.net
풀이
N이 5일 때 출력되는 모습은 다음과 같다.
* // 공백 4개 별 1개
** // 공백 3개 별 2개
*** // 공백 2개 별 3개
**** // 공백 1개 별 4개
***** // 공백 0개 별 5개
for문을 돌 때마다 공백이 줄어든 만큼 별이 늘어난다.
Java 11부터 추가된 String 메서드인 repeat()을 사용했다.
repeat()은 Arrays.fill() & System.arraycopy()를 통해서 새로운 문자열을 만들어준다고 한다.
https://www.javastring.net/java/string/java-string-repeat-method
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(bf.readLine());
bf.close();
for(int i=1;i<=N;i++) {
System.out.print(" ".repeat(N-i) + "*".repeat(i) + "\n");
}
}
}
'🧶Problem Solving' 카테고리의 다른 글
BOJ 1927번: 최소 힙 (0) | 2023.05.26 |
---|---|
BOJ 1874번: 스택 수열 (0) | 2023.05.25 |
BOJ 1021번: 회전하는 큐 (0) | 2023.05.25 |
BOJ 1011번: Fly me to the Alpha Centauri (0) | 2023.05.24 |