kinvper
Xem dạng PDF
Gửi bài giải
Điểm:
0,01 (OI)
Giới hạn thời gian:
1.5s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Gọi ~f(P)~ là số nghịch thế của hoán vị ~P~. Đếm số hoán vị ~P~ thỏa mãn các điều kiện sau:
~P~ là một hoán vị của ~\{1, 2, \ldots, n\}~.
~f(P) = k~
Input
Một dòng duy nhất chứa hai số nguyên ~n~ ~(1 \leq n \leq 10^5)~ và ~k~ ~(0 \leq k \leq \min\left( \binom{n}{2}, 10^5 \right))~.
Output
In ra một số nguyên duy nhất là số hoán vị có ~k~ nghịch thế. Kết quả chia lấy dư cho ~10^9 + 7~.
Scoring
| Subtask | Điểm | Giới hạn |
|---|---|---|
| 1 | ~50\%~ | ~1 \leq n \leq 10^3, 0 \le k \le 1000.~ |
| 2 | ~50\%~ | Không có ràng buộc gì thêm. |
Sample Input 1
3 2
Sample Output 1
2
Notes
Vì ~n = 3~, chuỗi ban đầu của chúng ta là ~\{1, 2, 3\}~ và chúng ta phải tìm số lượng hoán vị có ~k = 2~ nghịch thế. Có hai hoán vị như vậy:
~\{3, 1, 2\}~ có hai nghịch thế, ~(3, 1)~ và ~(3, 2)~.
~\{2, 3, 1\}~ có hai nghịch thế, ~(2, 1)~ và ~(3, 1)~.
Vì vậy, đáp án là ~2~.

Bình luận