Điểm:
200 (p)
Thời gian:
0.5s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Như chúng ta đã biết, Rubik là một khối lập phương gồm có \(6\) mặt: trắng, u: khối \(2 * 2 * 2\), khối \(3 * 3 * 3\), khối \(4 * 4 * 4\), khối \(5\) *đỏ, vàng, cam, xanh lá, xanh dương. Có rất nhiều loại rubik khác nha \(5 * 5,...;\) ngoài ra còn có các dạng rubik biến thể khác.
Mấy bữa nay Tí đang tìm hiểu về rubik, Tí muốn biết khối rubik \(n^3\) được tạo thành từ bao nhiêu khối nhỏ hơn(khối ở tâm, khối ở cạnh, khối ở góc). Ví dụ: khối \(2 * 2 * 2\) có \(8\) khối nhỏ hơn ghép lại.
Input
- Dòng thứ nhất chứa số \(T(1 \leq T \leq 100000)\) - Thể hiện số lượng test case.
- \(T\) dòng tiếp theo, mỗi dòng chứa số nguyên \(n. (2 \leq n \leq 10 ^ {18})\).
Output
- Ứng với mỗi testcase, in ra số khối cần tìm khi chia lấy dư cho \(1000000007\).
Example
Test 1
Input
2
2
3
Output
8
26
Bình luận
T = int(input())
MOD = 1000000000007
for _ in range(T):
n = int(input())
if n == 2:
print(8)
else:
print((6 * (n - 2) * (n - 2) + 12 * (n - 2) + 😎 % MOD)
10 bình luận nữa