藍橋杯 入門訓練 (BEGIN 2) 序列求和

2021-10-07 19:17:17 字數 1298 閱讀 9867

資源限制

時間限制:1.0s 記憶體限制:256.0mb

求1+2+3+…+n的值。

輸入包括乙個整數n。

輸出一行,包括乙個整數,表示1+2+3+…+n的值。

100

說明:有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。

一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例資料都正確了你的程式就是完全正確的,潛在的錯誤可能仍然導致你的得分較低。

1 <= n <= 1,000,000,000。

說明:請注意這裡的資料規模。

本題直接的想法是直接使用乙個迴圈來累加,然而,當資料規模很大時,這種「暴力」的方法往往會導致超時。此時你需要想想其他方法。你可以試一試,如果使用1000000000作為你的程式的輸入,你的程式是不是能在規定的上面規定的時限內執行出來。

本題另乙個要值得注意的地方是答案的大小不在你的語言預設的整型(int)範圍內,如果使用整型來儲存結果,會導致結果錯誤。

如果你使用c++或c語言而且準備使用printf輸出結果,則你的格式字串應該寫成%i64d以輸出long long型別的整數。

**題解一:**老老實實相加

ac**

#include

int main()

printf

("%lld\n"

,sum);}

return0;

}

此處使用了c語言的連續輸入詳情請看我部落格分類:「演算法提高」中的c語言-連續輸入問題

題解二:它是乙個等差數列!

ac**:

#include 

//等差數列

int main()

提解三:

#include

//不能在for迴圈()內int乙個新變數!!

int main()

printf

("%i64d"

,sum)

;return0;

}/**

疑問:%i64d與%lld在輸出 long long定義的變數的時候的區別?

*/

藍橋杯 入門訓練 BEGIN 2 序列求和

題滴鏈結 入門訓練 序列求和 時間限制 1.0s 記憶體限制 256.0mb 求1 2 3 n的值。輸入包括乙個整數n。輸出一行,包括乙個整數,表示1 2 3 n的值。說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例資料都正...

藍橋杯 BEGIN 2 入門訓練 序列求和

begin 2 入門訓練 序列求和 問題描述 求1 2 3 n的值。輸入格式 輸入包括乙個整數n。輸出格式 輸出一行,包括乙個整數,表示1 2 3 n的值。樣例輸入 4 樣例輸出 10 樣例輸入 100 說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提交之前所有這些樣例都需要測試通...

藍橋杯 BEGIN 2 序列求和

問題描述 求1 2 3 n的值。輸入格式 輸入包括乙個整數n。輸出格式 輸出一行,包括乙個整數,表示1 2 3 n的值。樣例輸入 4樣例輸出 10樣例輸入 100 說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例資料都正確了...