DOJ logoDOJ
문제
최근 추가된 문제들저장한 문제
카테고리DLC대회그룹팀게시판
랭킹
문제 풀이 랭킹스트릭 랭킹DOJ Power 랭킹
현황
문제 제안로그인회원가입
DOJ logoDOJ

OI 서브태스크 채점, Elo 레이팅, Discord 인증을 갖춘 커뮤니티 온라인 저지.

문제
문제 목록카테고리
커뮤니티
대회랭킹게시판공지사항외부 대회 개최이용 안내
계정
로그인회원가입채점 현황
정책
이용약관DLC 이용 규칙개인정보 처리방침API 사용 설명서언어별 채점 환경대회 순위 보상레이팅과 퍼포먼스
© 2026 DOJ
모든 권리 보유
해설

팰린드롬 덧셈

문제로 돌아가기

해설

F(x)=∑i=0NcixiF(x)=\sum_{i=0}^{N}c_ix^iF(x)=∑i=0N​ci​xi라 하자. N=0N=0N=0이면 FFF 자체가 팰린드롬이므로 그대로 출력하면 된다. 이제 N≥1N\ge1N≥1이라고 하자.

길이가 각각 N+1N+1N+1, NNN인 계수열 a0,⋯ ,aNa_0,\cdots,a_Na0​,⋯,a과 을 만들고

g(x)=∑i=0Naixi,h(x)=∑i=0N−1bixig(x)=\sum_{i=0}^{N}a_ix^i,\qquad h(x)=\sum_{i=0}^{N-1}b_ix^ig(x)=i=0∑N​a

라 하자. 먼저

a0=aN=cNa_0=a_N=c_Na0​=aN​=cN​

으로 둔다. 그리고 i=0,1,⋯ ,⌊N−12⌋i=0,1,\cdots,\left\lfloor\frac{N-1}{2}\right\rfloori=0,1,⋯,⌊2N−1​⌋에 대하여 다음을 순서대로 계산한다. 모든 계산은 을 법으로 한다.

bi=ci−ai,bN−1−i=bi,b_i=c_i-a_i,\qquad b_{N-1-i}=b_i,bi​=ci​−a ai+1=cN−1−i−bi,aN−1−i=ai+1.a_{i+1}=c_{N-1-i}-b_i,\qquad a_{N-1-i}=a_{i+1}.ai+1​=cN−1−i​

각 단계에서 bbb의 바깥쪽 두 계수와 그 다음 aaa의 바깥쪽 두 계수를 동시에 맞춘다. 따라서 반복이 끝나면 ai=aN−ia_i=a_{N-i}ai​=aN−i​가 모든 에 대해 성립하여 가 팰린드롬이고, 도 성립한다. 또한 각 계수를 직접 대입하면

F=g+hF=g+hF=g+h

가 성립한다.

h=0h=0h=0이면 ggg 하나만 출력하면 된다. h≠0h\ne0h=0이고 b0≠0b_0\ne0b이면 이므로 의 차수는 이고, 자체가 팰린드롬이다. 이 경우 두 개를 출력하면 된다.

남은 경우는 h≠0h\ne0h=0이고 b0=0b_0=0b0​=0인 경우이다. bk≠0b_k\ne0인 가장 작은 를 잡자. 의 대칭성 때문에 바깥쪽의 개 계수는 양쪽 모두 이고, 이다. 따라서

d=N−1−2k,d=N-1-2k,d=N−1−2k, r(x)=∑j=0dbj+kxjr(x)=\sum_{j=0}^{d}b_{j+k}x^jr(x)=j=0∑d​bj+

로 두면 rrr은 0이 아닌 팰린드롬이고

h=xkrh=x^krh=xkr

이다.

이제

s=r+xkrs=r+x^krs=r+xkr

로 두자. rrr이 차수 ddd의 팰린드롬이므로 sss의 계수열은 차수 d+kd+kd+k를 기준으로 대칭이다. 따라서 sss도 팰린드롬이다. 또한 −r-r도 팰린드롬이고

s+(−r)=xkr=hs+(-r)=x^kr=hs+(−r)=xkr=h

이므로

F=g+s+(−r)F=g+s+(-r)F=g+s+(−r)

를 얻는다.

ggg의 최고차항 계수는 cN≠0c_N\ne0cN​=0이다. 두 번째 경우의 hhh는 최고차항 계수가 b0≠이고, 마지막 경우의 역시 구성상 최고차항 계수가 0이 아니다. 따라서 출력하는 모든 다항식은 문제의 정의를 만족한다.

각 계수는 상수 번만 처리되므로 한 테스트 케이스의 시간 복잡도는 O(N)O(N)O(N), 추가 메모리는 O(N)O(N)O(N)이다. 전체 입력에 대해서는 O ⁣(∑(N+1))O\!\left(\sum(N+1)\right)O(∑(N+1))이다. 이 과정은 덧셈과 뺄셈만 사용하므로 이 소수일 필요가 없다.

Solution written by GPT5.6

N
​
b0,⋯ ,bN−1b_0,\cdots,b_{N-1}b0​,⋯,bN−1​
i​
xi
,
h
(
x
)
=
i=0∑N−1​bi​xi
MM
M
i
​
,
bN−1−i​
=
bi​,
−
bi​,aN−1−i​=
ai+1​.
iii
ggg
bi=bN−1−ib_i=b_{N-1-i}bi​=bN−1−i​
0​
=
0
bN−1=b0≠0b_{N-1}=b_0\ne0bN−1​=b0​=0
hhh
N−1N-1N−1
hhh
g,hg,hg,h
bk​
=
0
kkk
bbb
kkk
000
bN−1−k=bk≠0b_{N-1-k}=b_k\ne0bN−1−k​=bk​=0
k
​
xj
−
r
0b_0\ne0
b0​=0
r,s,−rr,s,-rr,s,−r
MM
M