Chụp ảnh

Xem PDF



Thời gian:
Java 8 3.0s
Kotlin 3.0s

Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2300 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Một nhóm có \(n\) người bạn, các bạn được đánh số hiệu từ \(1\) đến \(n\). Mọi người dự định tất cả đứng thành một hàng ngang để cùng nhau chụp ảnh. Đánh số vị trí đứng từ trái sang phải bắt đầu từ \(1\) đến \(n\). Với một số nguyên dương \(k\), khi xếp hàng ai cũng mong muốn chênh lệch giữa số hiệu của mình với vị trí đứng không vượt quá \(k\).

Input

  • Vào từ thiết bị vào chuẩn gồm hai số nguyên dương \(n, k\) \((n \leq 10^9, k < 5)\)

Output

  • Ghi ra thiết bị ra chuẩn một dòng chứa một số là phần dư của kết quả tính được chia dư cho \((10^9 + 7)\)

Scoring

  • Subtask \(1\) (\(25\%\) số điểm): \(n \leq 8\)
  • Subtask \(2\) (\(25\%\) số điểm): \(n \leq 10^5; k = 1\)
  • Subtask \(3\) (\(25\%\) số điểm): \(n \leq 10^5\)
  • Subtask \(4\) (\(15\%\) số điểm): \(k < 3\)
  • Subtask \(5\) (\(10\%\) số điểm): Không có ràng buộc gì thêm

Example

Test 1

Input
3 1
Output
3

Test 2

Input
3 2
Output
6

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.