注册 登录
编程论坛 C++教室

从 1 加到 n 的和

丽娜13 发布于 2014-07-19 16:09, 911 次点击
给出n,从1加到n。。。注意,n会非常大,这道题只能用数组存储值,拜托大家用一个一维数组,将和的每一位存在一个位中,然后将其输出。。。。
1 回复
#2
zklhp2014-07-19 18:18
直接用大数库多爽

程序代码:

// g++ -Wall -march=corei7-avx -Ofast -msse4.2 -mavx -std=c++11 sum_1_to_n.cpp -lm -lgmp -lgmpxx -o sum_1_to_n

#include <iostream>
#include <gmp.h>
#include <gmpxx.h>

using std::cout;
using std::cin;
using std::endl;

int main(void)
{
    mpz_class sum(0);
    mpz_class n(0);
    cin >> n;
    if (n > 1)
        sum = n * (n + 1) / 2;
    cout << sum << endl;
    return 0;
}


./sum_1_to_n.exe
555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555
154320987654320987654320987654320987654320987654320987654320987654320987654320987654320987654320987654320987654320987654320987654320956790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790
1