ĐẾM HOÁN VỊ

Một hoán vị \(p_{1},p_{2},\ldots,p_{n}\) của \(n\) số tự nhiên \(1,\ 2,\ \ldots,\ n\) được gọi là hoán vị dốc nếu tồn tại chỉ số \(i\ (1 < i < n)\) sao cho:

+ \(p_{j} > p_{j + 1}\ \forall\ i \leq j \leq n - 1.\)

+ \(p_{j} > p_{j - 1}\ \forall\ 2 \leq j \leq i.\)

Bạn hãy đếm số lượng hoán vị dốc với \(n\) cho trước. Vì kết quả có thể rất lớn nên bạn chỉ cần đưa ra phần dư trong phép chia số lượng hoán vị dốc cho \(10^{9} + 7\).

Dữ liệu vào:

+ Dòng đầu tiên chứa số nguyên \(t\ (1 \leq t \leq 100)\) – số bộ dữ liệu.

+ \(t\) dòng tiếp theo, mỗi dòng chứa một số nguyên \(n\ (1 \leq n \leq 10^{9})\) miêu tả một bộ dữ liệu.

Kết quả:

+ Ghi ra \(t\) dòng, mỗi dòng là đáp án tương ứng với từng bộ dữ liệu.

Ví dụ:

Input Output
2
2
3
0
2

Subtasks:

+ Subtask 1 (20%): \(n \leq 10,\ \ t = 1.\)

+ Subtask 2 (20%): \(n \leq 1000.\)

+ Subtask 3 (60%): Như ràng buộc gốc.

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. ducdung192 (6/9)
  2. nguyenanhlong (4/8)
  3. duyminh123 (3/6)
Trong 7 ngày
  1. kiennhientv (45/97)
  2. nguyenanhvu (44/91)
  3. vu123567 (39/69)
Trong 30 ngày
  1. quechi (81/99)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38877

Lưu Hải Phong - 2020
[email protected]