๋ฌธ์ (์ถ์ฒ: https://www.acmicpc.net/problem/11068)
< ํ๋ฌธ์ธ ์ >
๋ฌธ์ ํ์ด
2์ง๋ฒ ~ 64์ง๋ฒ์ผ๋ก ๋ณํ ํ ํ๋ฌธ์ธ์ง ํ๋จํ๋ค.
my solution (Java)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
public class _11068_ { // ํ๋ฌธ์ธ ์
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(bf.readLine());
for (int i = 0; i < T; i++) {
String str = bf.readLine();
boolean flag = false;
for (int j = 0; j <= str.length() / 2; j++) {
if (str.charAt(j) != str.charAt(str.length() - 1 - j)) {
flag = true;
break;
}
}
if (!flag) {
bw.write("1\n");
} else {
for (int j = 2; j <= 64; j++) {
if (j == 10) {
continue;
}
flag = false;
int num = Integer.parseInt(str);
ArrayList<Integer> list = new ArrayList<>();
while (num != 0) {
list.add(num % j);
num /= j;
}
for (int k = 0; k <= list.size() / 2; k++) {
if (list.get(k) != list.get(list.size() - 1 - k)) {
flag = true;
break;
}
}
if (!flag) {
bw.write("1\n");
break;
}
}
if (flag) {
bw.write("0\n");
}
}
}
bw.flush();
}
}
๋ณ์)
T : ํ ์คํธ ์ผ์ด์ค ์
str : ํ ์คํธ ๋ฐ์ดํฐ
flag : ํ๋ฌธ ์ฌ๋ถ
num : ํ ์คํธ ๋ฐ์ดํฐ string -> int
list : B์ง๋ฒ์ผ๋ก ๋ณํํ ๊ฐ
ํ ์คํธ ์ผ์ด์ค ์๋ฅผ ์ ๋ ฅ๋ฐ๋๋ค. ํ ์คํธ ์ผ์ด์ค ์๋งํผ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅ๋ฐ๋๋ค.
๋จผ์ ์ ๋ ฅ๋ฐ์ ํ ์คํธ ๋ฐ์ดํฐ๊ฐ ํ๋ฌธ์ธ์ง ํ๋จํ๋ค. ํ๋ฌธ์ด๋ผ๋ฉด 1์ ์ถ๋ ฅํ๊ณ ํ๋ฌธ์ด ์๋๋ผ๋ฉด 2์ง๋ฒ๋ถํฐ 64์ง๋ฒ์ผ๋ก ๋ณํํ๋ค. B์ง๋ฒ์ผ๋ก ๋ณํํ์ฌ ArrayList์ ์ ์ฅํ๋ค. ArrayList๋ฅผ ํ๋จํ๋ฉฐ ํ๋ฌธ์ธ์ง ํ๋จํ์ฌ ํ๋ฌธ์ด๋ผ๋ฉด 1์ ์ถ๋ ฅํ๊ณ ์๋๋ผ๋ฉด 0์ ์ถ๋ ฅํ๋ค.

'๐Algorithm > ๐ฅBaekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [Baekjoon] 9996_ํ๊ตญ์ด ๊ทธ๋ฆฌ์ธ ๋ ์๋ฒ์ ์ ์ํ์ง (0) | 2024.08.28 |
|---|---|
| [Baekjoon] 9342_์ผ์์ฒด (1) | 2024.08.27 |
| [Baekjoon] 2238_๊ฒฝ๋งค (0) | 2024.08.09 |
| [Baekjoon] 13717_ํฌ์ผ๋ชฌ GO (2) | 2024.08.08 |
| [Baekjoon] 1254_ํฐ๋ฆฐ๋๋กฌ ๋ง๋ค๊ธฐ (0) | 2024.08.07 |