Làm toán

View as PDF

Submit solution

Points: 0.25 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem source:
HSG Hòa Bình 2021-2022
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Bạn An sẽ kết thúc chương trình tiểu học trong năm học này. Bài kiểm tra cuối cùng của cậu là bài kiểm tra toán. Cậu chuẩn bị rất kỹ lưỡng cho bài kiểm tra này. Anh trai của cậu giúp đỡ bằng cách cho cậu một bài tập.

Trong bài tập này, người anh viết ra dãy số theo thứ tự lần lượt có ~1~ số ~1,2~ số ~2, 3~ số ~3~, và liên tục như vậy được một dãy vô hạn. Dưới đây là một vài số đầu tiên của dãy mà người anh viết:

$$ 1,2,2,3,3,3,4,4,4,4,5,5,5,5,5, \ldots $$

Bây giờ, người anh cho An hai số nguyên ~A, B~ và hỏi rằng tổng các số trong dãy có chỉ số từ ~A~ đến ~B~ bằng bao nhiêu? Ví dụ, nếu ~A=1~ và ~B=3~ thì nó là tổng của ba số đầu tiên kết quả là ~1+2+2=5~.

Em hãy viết chương trình giúp bạn An tính tổng theo yêu cầu của người anh.

Dữ liệu:

  • Gồm một dòng duy nhất chứa hai số nguyên ~A, B\left(1 \leq A \leq B \leq 10^{9}\right)~.

Kết quả:

  • Ghi ra một dòng duy nhất là số dư của tổng chia cho ~10^{9}+7~.

Ví dụ:

Sample Input 1
1 3
Sample Output 1
5
Sample Input 2
3 7
Sample Output 2
15
Sample Input 3
50 50
Sample Output 3
10

Giải thích

Trong ví dụ 2: Tổng các số từ vị trí ~3~ đến vị trí ~7~ là: ~2+3+3+3+4=15~.

Vậy kết quả in ra là ~15~

Ràng buộc:

  • Subtask1: ~50 \%~ số test tương ứng với ~1 \leq A \leq B \leq 100~;
  • Subtask2: ~30 \%~ số test tiếp theo tương ứng với ~1 \leq A \leq B \leq 10^{5}~;
  • Subtask3: ~20\%~ số test còn lại không có ràng buộc gì.

Comments

Please read the guidelines before commenting.


There are no comments at the moment.