Bảng số

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

An thích học vẽ bảng số. Bạn ấy tạo ra bảng số \(A\) có kích thước \(M \times N\) theo quy luật như sau:

  • Bảng có \(M\) dòng đánh số từ \(1\) đến \(M\).
  • Bảng có \(N\) cột đánh số từ \(1\) đến \(N\).

Tại vị trí dòng \(i\) và cột \(j\) trên bảng số sẽ được ghi \((i - 1) \cdot N + j\) nếu \(i + j\) là số chẵn, và ghi ra \(0\) nếu \(i + j\) là số lẻ.

Yêu cầu

Cho hai số nguyên dương \(M, N\). Hãy tính tổng tất cả các số được ghi trên bảng.

Input

  • Gồm một dòng duy nhất ghi hai số nguyên dương \(M\)\(N\), các số viết cách nhau một dấu cách.

Output

  • Một dòng duy nhất là tổng các số được ghi trên bảng số thỏa mãn yêu cầu. Vì kết quả có thể rất lớn nên hãy in ra đáp án sau khi chia lấy dư cho \(10^9 + 7\).

Example

Test 1

Input
3 4
Output
38
Note

Bảng số kích thước \(3 \times 4\) (\(M=3\) dòng, \(N=4\) cột):

1 2 3 4
1 1 0 3 0
2 0 6 0 8
3 9 0 11 0

Tổng các số trên bảng: \(1 + 3 + 6 + 8 + 9 + 11 = 38\).

Scoring

  • Subtask \(1\) (\(20\%\) số điểm): \(1 \le M, N \le 10^3\).
  • Subtask \(2\) (\(40\%\) số điểm): \(1 \le M, N \le 10^6\).
  • Subtask \(3\) (\(40\%\) số điểm): \(10^6 < M, N \le 10^7\).

Bình luận

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

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