만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

안전한 레이스

시간 제한2초메모리 제한512 MB

요약
길이 L인 원 위 부스 배치 중 연속한 S개 부스마다 경찰관이 최소 하나 있는 경우의 수를 123456789로 나눈 나머지를 구한다.
난이도

보통10점 중 6점

유형
조합론, 동적 계획법, 슬라이딩 윈도우
정답자
아직 제출이 없습니다

문제

내일은 레이스 날이다. 트랙 옆에는 깃발로 드라이버에게 신호를 보내는 트랙 마셜이 서 있다. 노란 깃발은 위험을 알리고, 파란 깃발은 한 바퀴 뒤진 차에게 더 빠른 차에게 길을 비켜 주라고 지시한다. 마셜은 각자 마셜 부스에서 근무한다. 마셜 부스는 트랙에서 잘 보이는 보호용 우리다.

트랙은 원형이고 길이는 LL데카미터다. 부스는 10미터(1데카미터)마다 하나씩 있어서 정확히 LL개이고, 출발점에서 0,1,…,L−10, 1, \dots, L-1데카미터 지점에 놓여 있다.

부스를 모두 쓸 필요는 없다. 규정은 연속한 두 마셜 사이의 거리를 최대 SS데카미터로 제한한다. 즉 원을 따라 연속한 부스 SS개를 어떻게 잡아도 그 안에 마셜이 최소 한 명 있어야 한다. 마셜은 결승 깃발을 흔들지 않으므로 출발점 겸 결승점 부스에 마셜을 두는 것은 의무가 아니고 금지도 아니다.

규정을 만족하는 마셜 배치의 개수를 123456789123456789로 나눈 나머지를 구하라.

입력

두 정수 LL과 SS가 주어진다. LL은 트랙의 길이, SS는 연속한 두 마셜 사이의 최대 거리다. (1≤S≤L≤1061 \le S \le L \le 10^6)

출력

규정을 만족하는 배치의 개수 WW를 123456789123456789로 나눈 나머지를 한 줄에 출력한다. 출력하는 값은 0≤W<1234567890 \le W < 123456789를 만족한다.

힌트

L=3L = 3, S=2S = 2일 때 유효한 배치는 네 가지다. 출발점에서 0과 1데카미터 지점, 0과 2데카미터 지점, 1과 2데카미터 지점, 그리고 0과 1과 2데카미터 지점에 마셜을 두는 배치다.

예제2

  1. 예제 1

    입력
    3 2
    
    예상 출력
    4
    
  2. 예제 2

    입력
    2500 2000
    
    예상 출력
    27511813