Summer Contest #01 - Quy luật dễ

Xem PDF



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: 1300 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: toanhoc.inp Output: toanhoc.out

Sau khi rời khỏi khu vực Hang Sơn Đoòng, ledinhbaonam, PhuocThien, uiaPrototype tiếp tục hành trình đến một địa điểm đặc biệt nằm sâu trong lòng Hà Nội — nơi được biết đến với tên gọi Viện Nghiên cứu cao cấp về Toán.
Trong phòng nghiên cứu trung tâm, uia phát hiện một dãy số đặc biệt được ghi lại trên một bảng đá:

\(0, 1, 5, 4, 0, 5, 1, 0, 4, 5, 5, 6, 0, 9, \dots\)

Dãy được mở rộng vô hạn theo một quy luật chưa được giải thích đầy đủ, nhưng đảm bảo luôn xác định được giá trị tại mọi vị trí.
Sau một hồi lâu suy nghĩ, cả 4 bạn vẫn chưa thể tìm ra quy luật của bài này, các bạn coder thông minh hãy giúp các bạn giải được bài toán này nhé!

Nhiệm vụ

Bạn được cho \(Q\) truy vấn.

Mỗi truy vấn gồm hai số nguyên \(l, r\).

Hãy tính tổng các phần tử của dãy từ vị trí \(l\) đến \(r\).

Input

  • Dòng đầu chứa số nguyên \(Q\) (\(1 \le Q \le 2 \times 10^5\))
  • \(Q\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(l, r\) (\(1 \le l \le r \le 10^{18}\))

Output

  • Với mỗi truy vấn, in ra tổng các phần tử trong đoạn \([l, r]\)

Example

Test 1

Input
3
1 3
4 9
1 11
Output
6
14
30
Note

Tổng của các số từ vị trí \(1\) đến vị trí \(3\) là: \(0 + 1 + 5 = 6\)
Tổng của các số từ vị trí \(4\) đến vị trí \(9\) là: \(4 + 0 + 5 + 1 + 0 + 4 = 14\)
Tổng của các số từ vị trí \(1\) đến vị trí \(11\) là: \(0 + 1 + 5 + 4 + 0 + \dots + 5 + 5 = 30\)

Test 2

Input
1
999999999999000000 1000000000000000000
Output
3100000

Bình luận

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

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

Kỳ thi: