QHD13 - Xếp bò - BULLS
Dữ liệu vào: Standard input
Dữ liệu ra: Standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: phanhieubl

Nông dân John muốn sắp xếp n con bò (bao gồm cả bò đực và bò cái) của ông ta trên 1 hàng. Ông ta biết rằng những con bò đực rất hung hăng – Nếu 2 con bò đực đứng quá gần nhau thì chúng sẽ trở nên hung dữ và bắt đầu húc nhau , vì thế chúng sẽ phá hỏng mất trật tự trên hàng mà ông ta vừa sắp xếp được.

Theo kinh nghiệm lâu năm của mình, John biết được nếu ở giữa hai con bò đực có ít nhất K con bò cái thì sẽ ngăn chặn được việc chúng húc nhau.

Vì thế, ông ta nhờ các Vcoders giúp đỡ để tính toán xem có bao nhiêu cách sắp xếp đàn bò của ông ta lại sao cho không có “chiến tranh” xảy ra giữa những chú bò, (Tất cả những con bò đực và những con bò cái đều giống nhau). Hai dãy ( B1..Bn ) và (A1..An ) được cho là khác nhau nếu tồn tại một vị trí i (1 <= i <= n) sao cho Ai < > Bi.

Input : Đọc từ file BULLS.INP gồm 1 dòng duy nhất chứa 2 số N (1<=N<=100000) và k (0<=k<=n) cách nhau 1 dấu cách.

Output: Ghỉ ra file BULLS.OUT gồm duy nhất một số là kết quả theo modul 2111992 

Ví dụ

BULLS.INP

BULLS.OUT

4 2

6

Giải thích output(C=bò cái , B:bò đực)

CCCC

BCCC

CBCC

CCBC

CCCB

BCCB

Back to Top