Tổng bình phương

Xem PDF

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Chắc hẳn các bạn đã quá quen với cách tính tổng các dãy số như \(1+2+3+\dots+n\) hay \(1-2+3-4+5-\dots+n\).

Hãy tính tổng \(A = -1^2+2^2-3^2+4^2-5^2+\dots\) gồm \(n\) số hạng. Nói cách khác, hãy tính biểu thức sau:

\[A = \sum_{i=1}^n i^2*(-1)^i\]

Input

  • Dòng đầu tiên gồm 1 số \(t\), là số lượng câu hỏi
  • \(t\) dòng tiếp theo, dòng thứ \(i\) gồm số \(n\).

Output

In ra \(t\) dòng, dòng thứ \(i\) là đáp án của bài toán tại câu hỏi thứ \(i\).

Example

Test 1

Input
2
6
9
Output
21
-45

Subtask

  • 50% số test: \(n \le 10^6\)
  • 50% số test: \(n \le 10^9\)

Bình luận


  • 0
    H_IT_K35    12:43 p.m. 18 Tháng 11, 2024

    code kham khảo cho ai không giải được:

    include <bits/stdc++.h>

    using namespace std;

    long long cal(long long x) {
    if (x % 2 == 0) {
    return (x / 2) * (x + 1);
    } else {
    return ((x - 1) / 2) * x - x * x;
    }
    }

    int main() {
    long long n;
    cin >> n;
    while (n--) {
    long long x;
    cin >> x;
    cout << cal(x) << "\n";
    }
    return 0;
    }

    • 4 bình luận nữa