자바 백준 2439번
브론즈 4
https://www.acmicpc.net/problem/2439
문제 보기
분류: 구현
문제 풀기
재귀 함수를 구현하여 별을 찍어 본다.
https://xcevor.tistory.com/223
순차적으로 늘어나는 별들이 오른쪽 정렬되어 있는 모습을 바로 이전 별 찍기 1 의 연장선에서 구현을 위해서 String 초기값을 입력된 숫자의 크기만큼 함수 .repeat() 을 사용하여 " " 빈 공간으로 할당한다.
재귀 함수를 돌 때마다 오른쪽 정렬된 별의 개수를 늘려주기 위해서 맨 앞의 빈 " " 을 하나 제거한 후 맨 뒤에 "*" 를 추가한다.
입력된 숫자와 count 가 같아졌을 때 return 한다.
코드 보기
import java.util.Scanner;
public class Main {
public static Scanner sc = new Scanner(System.in);
static int numStar = sc.nextInt();
public static void main(String[] args) {
int count = 0;
String star = " ".repeat(numStar); // 입력된 숫자만큼 빈 공간을 초기값으로 설정.
fnRecursiveStar(count, star);
}
public static void fnRecursiveStar(int count, String star) {
if (numStar == count) {
return;
}
star = star.substring(1) + "*"; // 맨 앞 한자리를 지우기 위해 .substring(int) 을 이용하여 index 1 부터 마지막까지 가져온 후 "*" 를 맨 뒤에 추가.
System.out.println(star);
fnRecursiveStar(count + 1, star);
}
}
/*
*
**
***
****
*****
*/
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 2441 - 별 찍기 4 (0) | 2023.01.26 |
---|---|
[Java] 백준 풀기 2440 - 별 찍기 3 (0) | 2023.01.25 |
[Java] 백준 풀기 2438 - 별 찍기 1 (0) | 2023.01.24 |
[Java] 백준 풀기 10817 - 세 수 (0) | 2023.01.23 |
[Java] 백준 풀기 4673 - 셀프 넘버 (2) | 2023.01.22 |