QOJ.ac

QOJ

Time Limit: 0.6 s Memory Limit: 256 MB Total points: 100

#117. Asketisme

Statistics

Suatu hari, JOI-kun mendapatkan mesin waktu. Ia memutuskan untuk pergi ke Jepang pada abad ke-9. Ia bertemu dengan Kukai, salah satu biksu paling terkenal di Jepang pada masa itu. Sang biksu ingin mengembangkan cara latihan baru.

Latihannya dilakukan sebagai berikut:

  • Kukai membaca sutra yang terdiri atas $N$ kalimat. Kalimat-kalimat tersebut memiliki urutan, dan ia harus membacanya sesuai urutan itu.
  • Setiap kalimat diberi sebuah bilangan bulat antara $1$ dan $N$, inklusif. Tidak ada dua kalimat berbeda yang diberi bilangan yang sama.
  • Ia harus membaca kalimat yang diberi bilangan bulat $i$ ($1 \le i \le N$) pada periode ke-$i$ dari $N$ periode waktu yang membagi satu hari secara merata. Setiap kalimat cukup pendek sehingga ia selalu dapat membaca satu kalimat dalam satu periode.

Kukai ingin membaca seluruh sutra secepat mungkin. Namun, jumlah hari yang diperlukan untuk menyelesaikannya bergantung pada bilangan bulat yang diberikan pada kalimat-kalimat dalam sutra. Kukai meminta JOI-kun menghitung banyaknya cara pemberian bilangan bulat pada kalimat-kalimat yang membuat Kukai memerlukan tepat $K$ hari untuk selesai membaca, jika ia membaca secara optimal.

Tugas

Diberikan banyaknya kalimat $N$ dan sebuah bilangan bulat $K$, hitung banyaknya cara pemberian bilangan bulat pada kalimat-kalimat yang membuat Kukai memerlukan tepat $K$ hari untuk selesai membaca jika ia membaca secara optimal, modulo $1\,000\,000\,007$.

Masukan

Baca data berikut dari masukan standar.

  • Baris pertama masukan berisi $N$ dan $K$, dipisahkan oleh satu spasi.

Keluaran

Cetak banyaknya cara pemberian bilangan bulat pada kalimat-kalimat yang membuat Kukai memerlukan tepat $K$ hari untuk selesai membaca jika ia membaca secara optimal, modulo $1\,000\,000\,007$.

Batasan

Semua data masukan memenuhi kondisi berikut.

  • $1 \le N \le 100\,000$.
  • $1 \le K \le N$.

Subsoal

Terdapat 4 subsoal. Nilai dan batasan tambahan setiap subsoal adalah sebagai berikut:

Subsoal 1 [4 poin]

  • $N \le 10$.

Subsoal 2 [20 poin]

  • $N \le 300$.

Subsoal 3 [25 poin]

  • $N \le 3\,000$.

Subsoal 4 [51 poin]

Tidak ada batasan tambahan.

Contoh

Masukan 1

3 2

Keluaran 1

4

Penjelasan

Terdapat $4$ cara pemberian bilangan bulat pada kalimat-kalimat yang membuatnya memerlukan $2$ hari untuk selesai membaca.

  • Kalimat pertama diberi $1$, kalimat berikutnya diberi $3$, dan kalimat terakhir diberi $2$. Ia membaca dua kalimat pertama (masing-masing bernomor $1$ dan $3$) pada hari pertama, dan kalimat terakhir (bernomor $2$) pada hari kedua.
  • Kalimat pertama diberi $2$, kalimat berikutnya diberi $1$, dan kalimat terakhir diberi $3$.
  • Kalimat pertama diberi $2$, kalimat berikutnya diberi $3$, dan kalimat terakhir diberi $1$.
  • Kalimat pertama diberi $3$, kalimat berikutnya diberi $1$, dan kalimat terakhir diberi $2$.

Masukan 2

10 5

Keluaran 2

1310354

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
EditorialOpen Official EditorialQingyu- Download

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.