어떤 두 문자가 합쳐져 나오는 수를 f(x,y)라고 한다면 f(x,y)=−(x+y)(mod3) 이다.
가장 낮은 곳에 x 가 있고 그 수가 위로 가면서 어떻게 영향을 미치나 보자.
처음엔 x이다.
위로 한칸 가면 −x,−x 가 된다.
위로 한칸 더 가면 x,2x,x 처럼 된다.
마치 파스칼의 삼각형처럼 수가 늘어나고 그럼 k번을 올라가면 (−1)k⋅2k 가 기여되는게 아닌가? 싶을 수 있다.
그러나 이건 위로 뾰족한 삼각형이기 때문에 저 수만큼 기여할 수 있지 않다.
i에서 가장 위칸까지 가는 경로의 개수를 생각한다. 그럼 위 칸까지 n−1 번 이동해야 하는데, 왼쪽으로 i번, 오른쪽으로 n−1−i 번 이동하는 경우의 수임을 알 수 있고, 결국 이 경로의 가지수가 ai=x 가 가장 위 꼭지점에 기여하는 x 의 개수임을 알 수 있다.
따라서 ai=x 라면 (−1)n−1⋅(in−1)x(mod3) 만큼 정답에 기여가 된다.
Comments