[Silver IV] 초콜릿과 11과 팰린드롬 - 31460
성능 요약
메모리: 110064 KB, 시간: 116 ms
분류
수학, 해 구성하기
제출 일자
2026년 04월 25일 22:04:59
문제 설명
코코는 $0$부터 $9$까지의 숫자가 새겨진 초콜릿을 많이 갖고 있다. 코코는 이 초콜릿을 가지고 큰 수를 만들어서 한별이에게 선물하려고 한다.
코코는 한별이가 팰린드롬 수, 특히 $11$을 좋아한다는 사실을 알고 있기 때문에, $11$의 배수인 팰린드롬 수를 만들고 싶다. 팰린드롬 수는 왼쪽에서 오른쪽으로 읽은 것과 오른쪽에서 왼쪽으로 읽은 것이 서로 같은 수를 말한다. 예를 들어, $9$, $11$, $4774$, $13531$은 팰린드롬 수이고, $1232$, $1100$은 팰린드롬 수가 아니다.
코코를 도와 $11$의 배수이면서 팰린드롬인 $N$자리의 음이 아닌 정수를 하나 찾아주자. 각 숫자가 새겨진 초콜릿은 충분히 많다고 가정한다. $0$을 제외한 수는 숫자 $0$으로 시작할 수 없다.
입력
첫 번째 줄에는 테스트 케이스의 개수 $T$가 주어진다. $(1\le T\le 100)$
각 테스트 케이스에 대해, 양의 정수 $N$이 한 줄에 주어진다. $(1\le N\le 10\, 000)$
출력
각 테스트 케이스에 대해, $11$의 배수이면서 팰린드롬인 $N$자리의 음이 아닌 정수를 한 줄에 출력한다. 답이 여러 가지라면 아무거나 출력한다. 그러한 수가 없으면 -1을 대신 출력한다.
💡 해결 방법
💻 코드
# https://www.acmicpc.net/problem/31460
import sys
import collections
t = int(input())
12221
11
121
1221
for i in range(t):
n = int(input())
if n == 1:
print(0)
elif n == 2:
print(11)
else:
print("1", '2' * (n - 2), "1", sep = '')