계산왕 연산군

시간 제한1초메모리 제한128 MB

요약
숫자별 이항 연산 테이블이 주어질 때, a부터 b(최대 10^18)까지의 수를 왼쪽에서 오른쪽으로 결합한 결과를 자릿수 DP로 계산하는 문제입니다.
난이도

어려움10점 중 8점

유형
동적 계획법, 수학, 비트 연산
정답자
아직 제출이 없습니다

문제

어떤 연산자 ⊙:{0,1,…,9}×{0,1,…,9}→{0,1,…,9}\odot : \{0,1,\dots,9\} \times \{0,1,\dots,9\} \to \{0,1,\dots,9\} 가 있다. 이 연산자는 항상 0⊙0=00 \odot 0 = 0 을 만족한다.

이 연산자를 이용해 음이 아닌 정수에 대한 또 다른 연산자 ⊗\otimes 를 정의한다. 두 음이 아닌 정수 aa, bb 에 대해 a⊗ba \otimes b 는 각 자리마다 따로 계산한다. 즉, 오른쪽에서부터 센 ii번째 자리의 숫자는 (aa의 ii번째 자리 숫자) ⊙\odot (bb의 ii번째 자리 숫자) 로 정한다. 두 수의 자리 수가 다르면 짧은 쪽의 앞을 00 으로 채워 자리를 맞춘다.

예를 들어 x⊙y=(x×y) mod 10x \odot y = (x \times y) \bmod 10 으로 정의되어 있다면, 5566⊗2395566 \otimes 239 는 다음과 같이 계산된다. 먼저 239239 를 02390239 로 맞춘 뒤 각 자리를 계산하면 6⊙9=46 \odot 9 = 4, 6⊙3=86 \odot 3 = 8, 5⊙2=05 \odot 2 = 0, 5⊙0=05 \odot 0 = 0 이므로 결과는 00840084, 즉 8484 이다.

연산자 ⊙\odot 의 표와 두 음이 아닌 정수 aa, bb (a≤ba \le b) 가 주어질 때, a⊗(a+1)⊗(a+2)⊗⋯⊗(b−1)⊗ba \otimes (a+1) \otimes (a+2) \otimes \dots \otimes (b-1) \otimes b 의 값을 구하여라.

⊗\otimes 연산은 왼쪽에서 오른쪽 순서로 계산한다. 즉 a⊗b⊗c=(a⊗b)⊗ca \otimes b \otimes c = (a \otimes b) \otimes c 이다.

입력

첫 1010 줄에는 각 줄마다 1010 개의 숫자가 주어진다. ii번째 줄의 jj번째 숫자는 (i−1)⊙(j−1)(i-1) \odot (j-1) 의 값이다 (1≤i,j≤101 \le i, j \le 10). 0⊙00 \odot 0 은 항상 00 이다.

1111번째 줄에는 두 정수 aa, bb 가 공백으로 구분되어 주어진다 (0≤a≤b≤10180 \le a \le b \le 10^{18}).

출력

aa 부터 bb 까지의 모든 수를 ⊗\otimes 로 계산한 결과를 출력한다. 앞자리의 불필요한 00 은 출력하지 않는다 (결과가 00 이면 00 을 출력한다).

예제3

  1. 예제 1

    입력
    0 1 2 3 4 5 6 7 8 9
    1 2 3 4 5 6 7 8 9 0
    2 3 4 5 6 7 8 9 0 1
    3 4 5 6 7 8 9 0 1 2
    4 5 6 7 8 9 0 1 2 3
    5 6 7 8 9 0 1 2 3 4
    6 7 8 9 0 1 2 3 4 5
    7 8 9 0 1 2 3 4 5 6
    8 9 0 1 2 3 4 5 6 7
    9 0 1 2 3 4 5 6 7 8
    0 10
    
    예상 출력
    15
    
  2. 예제 2

    입력
    0 9 8 7 6 5 4 3 2 1
    1 0 9 8 7 6 5 4 3 2
    2 1 0 9 8 7 6 5 4 3
    3 2 1 0 9 8 7 6 5 4
    4 3 2 1 0 9 8 7 6 5
    5 4 3 2 1 0 9 8 7 6
    6 5 4 3 2 1 0 9 8 7
    7 6 5 4 3 2 1 0 9 8
    8 7 6 5 4 3 2 1 0 9
    9 8 7 6 5 4 3 2 1 0
    15 23
    
    예상 출력
    99
    
  3. 예제 3

    입력
    0 5 7 2 9 1 4 8 3 6
    2 4 6 8 0 1 3 5 7 9
    9 8 7 6 5 4 3 2 1 0
    1 1 2 3 5 8 3 1 4 5
    6 7 8 9 0 1 2 3 4 5
    3 3 3 3 3 3 3 3 3 3
    0 1 0 1 0 1 0 1 0 1
    7 6 5 4 3 2 1 0 9 8
    4 4 4 4 4 4 4 4 4 4
    8 6 4 2 0 8 6 4 2 0
    45 78
    
    예상 출력
    37