Bố trí chỗ ngồi
Xem dạng PDF
Gửi bài giải
Điểm:
100,00 (OI)
Giới hạn thời gian:
1.0s
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++, Python
Bố trí chỗ ngồi
Mô tả và yêu cầu
Bố trí chỗ ngồi
Đến dự buổi họp mặt đầu tiên của Câu lạc bộ (CLB) Tin học có 𝑛 thành viên được đánh
số thứ tự từ 1 đến 𝑛. Ban chủ nhiệm CLB đã bố trí đúng 𝑛 chỗ ngồi cho các thành viên
này, các chỗ ngồi được đánh số thứ tự từ 1 đến 𝑛. Để thêm phần thú vị cho việc bố trí chỗ
ngồi, Ban chủ nhiệm CLB quyết định bố trí chỗ ngồi sao cho không có bất cứ thành viên
nào ngồi vào chỗ ngồi có cùng số thứ tự với mình.
Hãy lập trình xác định số cách sắp chỗ ngồi khác nhau mà Ban chủ nhiệm có thể bố trí.
Dữ liệu vào: cho trong file văn bản BOTRICN.INP chứa một số nguyên dương 𝑛 (𝑛 ≤
100).
Kết quả: ghi ra file văn bản BOTRICN.OUT một số là phần dư của kết quả tìm được
khi chia cho 1000000007 (109 + 7).
Ví dụ
BOTRICN.INP BOTRICN.OUT
3 2
Giải thích ví dụ: Hai cách bố trí chỗ ngồi là:
Cách 1: Người 1 ngồi vị trí 2, người 2 ngồi vị trí 3 và người 3 ngồi vị trí 1.
Cách 2: Người 1 ngồi vị trí 3, người 2 ngồi vị trí 1 và người 3 ngồi vị trí 2.
Lưu ý: 50% số điểm ứng với các test có 𝑛 ≤ 10.
Bình luận