Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tổng dãy số hạng n² - (n-1)² đến n số hạng C++


Cho số nguyên N. Nhiệm vụ: tính tổng dãy n² - (n-1)² đến n số hạng.

Ví dụ minh họa

Input: N = 3 Output: 9

[1²-0²] + [2²-1²] + [3²-2²] = 1 + 3 + 5 = 9

Phương pháp giải

Số hạng: n² - (n-1)² = (n+n-1)(n-n+1) = 2n-1. Tổng = Σ(2n-1) = 2×n(n+1)/2 - n = n². Kết quả là n², có thể lấy modulo nếu lớn.

Ví dụ chương trình

#include <iostream> 
using namespace std; 

#define MOD 1000000007

long long calcSumNTerms(long long n) {
    return ((n % MOD) * (n % MOD)) % MOD;
}

int main() {
    long long n = 4325353;
    cout << "Tổng dãy đến " << n << " số hạng: " << calcSumNTerms(n);
    return 0;
}

Kết quả

Tổng dãy đến 4325353 số hạng: 678443653