[CSES 3157] Collecting Numbers Distribution

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

Bạn được cho một mảng chứa mỗi số từ ~1 \dots n~ đúng một lần. Bạn thu thập các số theo thứ tự tăng dần từ ~1~ đến ~n~. Trong mỗi lượt, bạn duyệt mảng từ trái sang phải và thu thập càng nhiều số liên tiếp càng tốt, bắt đầu từ số nhỏ nhất chưa được thu thập.

Nhiệm vụ của bạn là xác định, với mỗi ~k=1,2,\dots,n~, số lượng mảng cần đúng ~k~ lượt để thu thập tất cả các số.

Dữ liệu vào

Dòng duy nhất chứa một số nguyên ~n~.

Kết quả

In ra ~n~ số: với mỗi ~k=1,2,\dots,n~, đáp án lấy modulo ~10^9+7~.

Giới hạn

  • ~1 \le n \le 5000~

Ví dụ

Dữ liệu vào:

3

Kết quả:

1
4
1

Giải thích: Các mảng là ~[1,2,3]~ (~1~ lượt), ~[1,3,2]~ (~2~ lượt), ~[2,1,3]~ (~2~ lượt), ~[2,3,1]~ (~2~ lượt), ~[3,1,2]~ (~2~ lượt) và ~[3,2,1]~ (~3~ lượt).


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.