Challenge: Summing the N series

Subdomeniu: Fundamentals (fundamentals)

Scor cont: 20.0 / 20

Submission status: Accepted

Submission score: 1.0

Submission ID: 464723435

Limbaj: cpp14

Link challenge: https://www.hackerrank.com/challenges/summing-the-n-series/problem

Cerinta

There is a sequence whose $n^{\text{th}}$ term is  
$$T_n = n^2 - (n-1)^2$$  

Evaluate the series  
$$S_n = T_1 + T_2 + T_3 + \cdots + T_n$$  
Find $S_n \bmod (10^9+7)$.  

**Example**  

$n = 3$  

The series is $1^2-0^2 + 2^2-1^2 + 3^2-2^2 = 1 + 3 + 5 = 9$.  

**Function Description**  

Complete the *summingSeries* function in the editor below.  

*summingSeries* has the following parameter(s):  

- *int n:* the inclusive limit of the range to sum  

**Returns**  

- *int:* the sum of the sequence, modulo $(10^9+7)$

Input Format

The first line of input contains $t$, the number of test cases.  
Each test case consists of one line containing a single integer $n$.

Constraints

+ $1 \le t \le 10$  
+ $1 \le n \le 10^{16}$

Cod sursa

#include <bits/stdc++.h>

using namespace std;

string ltrim(const string &);
string rtrim(const string &);

int summingSeries(long n) {
return ((n%1000000007)*(n%1000000007))%1000000007;
}
int main()
{
    ofstream fout(getenv("OUTPUT_PATH"));

    string t_temp;
    getline(cin, t_temp);

    int t = stoi(ltrim(rtrim(t_temp)));

    for (int t_itr = 0; t_itr < t; t_itr++) {
        string n_temp;
        getline(cin, n_temp);

        long n = stol(ltrim(rtrim(n_temp)));

        int result = summingSeries(n);

        fout << result << "\n";
    }

    fout.close();

    return 0;
}

string ltrim(const string &str) {
    string s(str);

    s.erase(
        s.begin(),
        find_if(s.begin(), s.end(), not1(ptr_fun<int, int>(isspace)))
    );

    return s;
}

string rtrim(const string &str) {
    string s(str);

    s.erase(
        find_if(s.rbegin(), s.rend(), not1(ptr_fun<int, int>(isspace))).base(),
        s.end()
    );

    return s;
}
HackerRank Fundamentals – Summing the N series