반응형
풀이
- 해당 문제를 봤을 때, 어떤 규칙이 있는지 K=7까지 확인해보니까
- 피보나치처럼 K번째 인덱스 문자열은
- K-1번째 인덱스 +K-2번째 인덱스 값을 합친 문자열이라는 것을 확인하여
- 처음부터 해당 값의 A와B의 개수를 센 2차원 배열을 만들어 저장 후 체크하여 해결
import java.util.Scanner;
import java.util.stream.Collectors;
import java.util.Arrays;
public class _9625 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int K = sc.nextInt();
int[][] li = new int[K+1][2];
li[0] = new int[]{1,0};
li[1] = new int[]{0,1};
if (K>=2) {
for (int i=2; i<=K; i++) li[i] = new int[]{li[i-1][0]+li[i-2][0], li[i-1][1]+li[i-2][1]};
}
System.out.println(Arrays.stream(li[K]).mapToObj(String::valueOf).collect(Collectors.joining(" ")));
}
}
// 0, A
// 1, B
// 2, BA
// 3, BAB
// 4, BABBA
// 5, BABBABAB
// 6, BABBABABBABBA
// 7, BABBABABBABBABABBABAB
'알고리즘' 카테고리의 다른 글
[백준, 자바, 16395번] 파스칼의 삼각형 (0) | 2024.10.25 |
---|---|
[백준, 자바, 13301번] 타일 장식물 (0) | 2024.10.25 |
[백준, 자바, 11057번] 오르막 수 (0) | 2024.10.23 |
[백준, 자바, 1463번] 1로 만들기 (0) | 2024.10.23 |
[백준, 자바, 1780번] 종이의 개수 (1) | 2024.10.23 |