求和要注意兩點:
1.資料規模大小
2.**執行效率
求1+2+3+…+n的值。
輸入包括乙個整數n。
輸出一行,包括乙個整數,表示1+2+3+…+n的值。
1 <= n <= 1,000,000,000_序列求和,最先想到的肯定是迴圈n2,但當資料規模很大時,暴力迴圈就會導致超時,所以我們就要轉變思維,想想去算這類式子有什麼簡單的演算法。n=1,000,000,000的值超出32位整數int範圍
就本題而言,我們可以利用等差數列求和公式sum=(1+n)n/2。
因為最大值已超過32位整型值,所有我們做運算時要在64位整數下進行。
unsigned long int 0~4,294,967,295 (32位作業系統)在c/c++中,64位整型一直是一種沒有確定規範的資料型別。現今主流的編譯器中,對64為整型的支援也是標準不一,形態各異。一般來說,64位整型的定義方式有long long和__int64兩種,而輸出到標準輸出方式有printf(「%lld」,a),printf(「%i64d」,a),和cout << a三種方式。
#include
using namespace std;
intmain()
入門訓練 序列求和
入門訓練 序列求和 時間限制 1.0s 記憶體限制 256.0mb 問題描述 求1 2 3 n的值。輸入格式 輸入包括乙個整數n。輸出格式 輸出一行,包括乙個整數,表示1 2 3 n的值。樣例輸入 4 樣例輸出 10樣例輸入 100 說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提...
入門訓練 序列求和
問題描述 求1 2 3 n的值。輸入格式 輸入包括乙個整數n。輸出格式 輸出一行,包括乙個整數,表示1 2 3 n的值。樣例輸入 4 樣例輸出 10 樣例輸入 100 說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例資料都正...
入門訓練 序列求和
問題描述 求1 2 3 n的值。輸入格式 輸入包括乙個整數n。輸出格式 輸出一行,包括乙個整數,表示1 2 3 n的值。樣例輸入 4樣例輸出 10樣例輸入 100 說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例資料都正確了...