728x90
https://www.acmicpc.net/problem/2661
메모리: 11,524 KB , 시간: 68 ms
사용 알고리즘: 백트래킹
728x90
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
static int N;
static int[] arr;
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
N = Integer.parseInt(br.readLine());
arr = new int[N];
combi(0);
StringBuilder result = new StringBuilder();
for (int i = 0; i < N; i++) {
result.append(arr[i]);
}
System.out.println(result);
}
private static boolean combi(int n) {
if(n == N)
return true;
for(int i = 1; i <= 3; i++) {
arr[n] = i;
// 좋은 수열인지 확인
if(isGood(n)) {
if(combi(n + 1)) return true;
}
}
return false;
}
private static boolean isGood(int n) {
boolean flag;
for (int i = 1; i <= (n + 1) / 2; i++) {
flag = false;
for (int j = 0; j < i; j++) {
if(arr[n - i - j] != arr[n - j]) {
flag = true;
break;
}
}
if(!flag) return false;
}
return true;
}
}
728x90
'Problem Solving > BOJ' 카테고리의 다른 글
[백준, BOJ 2212] 센서 (java) (0) | 2025.06.23 |
---|---|
[백준, BOJ 11780] 플로이드 2 (java) (0) | 2025.06.17 |
[백준, BOJ 2213] 트리의 독립집합 (java) (0) | 2025.06.06 |
[백준, BOJ 2580] 스도쿠 (java) (0) | 2025.06.05 |
[백준, BOJ 2982] 국왕의 방문 (java) (0) | 2025.05.30 |