Bậc thầy pha chế rượu

View as PDF

Submit solution

Points: 0.94 (partial)
Time limit: 1.0s
Memory limit: 512M
Input: stdin
Output: stdout

Problem source:
add bởi blackstart
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Ancol là một tay pha chế rượu có tiếng ở VOJ. Cách pha chế rượu của anh ta rất đặc biệt đó là:

  • Chỉ dùng ~N~ chai để pha chế rượu.
  • Không có ~2~ chai nào có độ rượu bằng nhau.
  • Chỉ dùng ~2~ loại rượu để pha chế cho mỗi ly rượu mà khách gọi.
  • Chỉ lấy ~2~ loại rượu nằm ở gần nhau.
  • Sau khi pha chế xong anh ta sẽ đổi vị trí ~2~ chai rượu đó.

Tuy nhiên do sức khỏe anh ta chỉ pha cho đúng ~K~ vị khách rồi nghỉ.

Vào một buổi sáng đẹp trời, anh ta nhận ra ~1~ điều là có rất nhiều lần sau khi nghỉ các chai rượu được sắp xếp với độ rượu tăng dần mặc dù ban đầu chúng được đề ở vị trí bất kì.

Input

Gồm ~2~ số ~N~, ~K~.

Output

Số trường hợp các chai ban đầu mà sau khi nghỉ các chai rượu được xếp tăng dần về độ rượu sau khi modul ~10^{9} + 9~.

Giới hạn

~1 \leq N \leq 2000~.

~0 \leq K \leq 2000~.

Sample Input 1

3 0

Sample Output 1

1

Sample Input 2

3 1

Sample Output 2

2

Sample Input 3

3 2

Sample Output 3

3

Sample Input 4

3 3

Sample Output 4

3

Note

Giải thích test ví dụ 1: ~(1~, ~2~, ~3)~

Giải thích test ví dụ 2: ~(2~, ~1~, ~3)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

Giải thích test ví dụ 3: ~(3~, ~1~, ~2)~ ~\rightarrow~ ~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~(2~, ~3~, ~1)~ ~\rightarrow~ ~(2~, ~1~, ~3)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~(1~, ~2~, ~3)~ ~\rightarrow~ ~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

Giải thích test ví dụ 4: ~(2~, ~1~, ~3)~ ~\rightarrow~ ~(1~, ~2~, ~3)~ ~\rightarrow~ ~(2~, ~1~, ~3)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~ ~\rightarrow~ ~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~(3~, ~2~, ~1)~ ~\rightarrow~ ~(3~, ~1~, ~2)~ ~\rightarrow~ ~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

Lưu ý: thứ tự đổi và cách đổi khác nhau với cùng ~1~ thứ tự chai ban đầu chỉ tính là ~1~.

~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~ ~\rightarrow~ ~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~(1~, ~3~, ~2)~ ~\rightarrow~ ~(1~, ~2~, ~3)~ ~\rightarrow~ ~(2~, ~1~, ~3)~ ~\rightarrow~ ~(1~, ~2~, ~3)~

~2~ cách cách đổi trên được xem là ~1~ vì đều xuất phát từ ~(1~, ~3~, ~2)~.


Comments

Please read the guidelines before commenting.


There are no comments at the moment.