π λ¬Έμ
https://www.acmicpc.net/problem/1111
π μμ΄λμ΄
μ λκ° λ΄μ λ²μκ° -100, 100 μ¬μ΄λΌ νμ¬ μμ νμμ κ³ λ €νμλ€.
1. μ€μ ν¬μΈνΈ : -100 ~ 100 μ¬μ΄μμ Aκ° λ°λμ λμ€μ§ μλλ€. Bκ° μ»€λ²μΉ μλ μλ€ (-100 , 99 μ κ°μ μΌμ΄μ€ )
input:
3
-100 -99 2
output:
10203
// μμ΄μ μΈ λ²μ§Έ μλ‘ 2κ° μλλΌ 2 μ΄μ 100 μ΄νμ μ μ€ μ무거λ μ¬μ©νμ¬λ
// λͺ¨λ κ³±ν΄μ§λ μμ μ λκ°μ΄ 100μ λμ΅λλ€.
// -100 * 101 + 10001 = -99, -99 * 101 + 10001 = 2
μΆμ² : https://www.acmicpc.net/board/view/107405
2. μ€μ ν¬μΈνΈ : μ€λ³΅ κ°μ λΉκ΅νλ λΆλΆμμ if (isAble && next != foundNum) {
nextμ κ°μ μ΄κΈ°κ°μ μ μ ν΄μΌ νλ€. μ²μμ nextλ‘ -1μ μ§μ ν΄λλ -1μ΄ λ€μκ°μΌλ‘ λμ¬ μ μλ κ²½μ°κ° 무μλλ€.
Integer.MAX_VALUEλ‘ λ³κ²½ ν ν΅κ³Όνμλ€.
π νμ΄
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
StringTokenizer st;
int n = Integer.parseInt(br.readLine());
int[] arr = new int[n];
st = new StringTokenizer(br.readLine());
for (int i = 0; i < n; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
if (n == 2) {
if (arr[0] == arr[1]) {
System.out.println(arr[0]);
return;
}
}
if (n <= 2) { //1 λλ 2
System.out.println("A");
return;
}
int foundCnt = 0;
int next = Integer.MAX_VALUE;
int tempB;
for (int a = -200; a <= 200 && foundCnt < 2; a++) {
boolean isAble = true;
tempB = arr[1] - arr[0] * a;
for (int i = 1; i < n; i++) {
if (arr[i - 1] * a + tempB != arr[i]) {
isAble = false;
break;
}
}
int foundNum = arr[n - 1] * a + tempB;
if (isAble && next != foundNum) {
// System.out.println("FOUND : " + foundNum);
// System.out.println("ABLE: " + a + " " + tempB);
next = foundNum;
foundCnt++;
}
}
// System.out.println(foundCnt);
System.out.println(foundCnt == 0 ? "B" : (foundCnt >= 2 ? "A" : next));
}
}
'λ°±μ€(boj)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JAVA]1153 λ€ κ°μ μμ (1) | 2025.04.13 |
---|---|
[JAVA]16947 μμΈ μ§νμ² 2νΈμ (0) | 2025.04.13 |
[JAVA]1377 λ²λΈ μνΈ, μ λ ¬ (0) | 2025.04.12 |
[JAVA]11437 LCA κ³΅ν΅ λΆλͺ¨ λ Έλ μ°ΎκΈ°(골λ 3) (0) | 2023.09.20 |
[JAVA]13418 νκ΅ νλ°©νκΈ°, 골λ 3 (0) | 2023.08.21 |