Gửi bài giải
Điểm:
3,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
chienbinh.inp
Output:
chienbinh.out
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python
Trong một vương quốc xa xưa, một vị tướng huyền thoại đang tập hợp một đội quân bất bại để chuẩn bị cho cuộc chiến vĩ đại. Đội quân này có một cơ chế huấn luyện đặc biệt, giúp binh lính nhanh chóng trưởng thành và chiêu mộ thêm chiến binh mới theo quy luật sau:
- Ngày đầu tiên (ngày thứ ~0~), đội quân có ~n~ chiến binh ở cấp ~1~.
- Ở mỗi ngày tiếp theo:
- Mỗi chiến binh cấp ~i~ sẽ huấn luyện và chiêu mộ ~i~ tân binh (tất cả ở cấp ~1~). Những tân binh này sẽ bắt đầu huấn luyện và chiêu mộ lính mới từ ngày hôm sau.
- Đồng thời, chiến binh cấp ~i~ sẽ thăng cấp lên ~i + 1~.
Yêu cầu
Hãy xác định sau ~k~ ngày tổng số chiến binh có trong đội quân là bao nhiêu. Kết quả lấy dư với ~10^9 + 7~.
Dữ liệu đầu vào
Gồm một file chienbinh.inp
chứa hai số nguyên ~n~ và ~k~:
- ~1 \leq n \leq 1000~
- ~1 \leq k \leq 10^5~
Dữ liệu đầu ra
Gồm một file chienbinh.out
chứa một số nguyên duy nhất là kết quả bài toán chia lấy dư với ~10^9 + 7~.
Ràng buộc
- Có 40% số test với ~n \leq 100~, ~k \leq 1000~.
- Có 60% số test còn lại không giới hạn gì thêm.
Ví dụ
Ví dụ 1
chienbinh.inp
5 4
chienbinh.out
170
Giải thích
Với ~5~ chiến binh ban đầu, sau ~4~ ngày tổng số chiến binh có trong quân đội là ~170~.
Bình luận