問題描述:大部分的正整數可以表示為2個以上連續整數之和。如6=1+2+3,9=4+5=2+3+4.你的任務是求出給定正整數可以表示為多少個2個以上連續整數之和。
思路:令輸入的數為n,i=1,j=i+i,sum=∑(i,j),m=n/2+1;
在3個之中迴圈。直到不滿足條件為止。 條件:i<=j && j
1.若sum
2.若sum>n,說明和超了,則 讓sum=sum-i,假如之前有4個數字相加,那麼現在變為了3個數字相加。然後使得i+1
3.若sum=n,說明滿足條件,cnt+1. sum=sum-i,i++ 繼續尋找滿足和。。
view code
1 #include 2 #include 3using
namespace
std;
4int findresult(intn)5
19else
if(sum
2024
else
if(sum>n)
2529}30
return
cnt;31}
32int
main()
3340
return0;
41 }
連續整數和問題
問題描述 大部分正整數可以表示2個以上連續整數之和。如 6 1 2 3,9 5 4 2 3 4 實驗任務 連續整數和問題要求計算給定的正整數可以表示為多少個2以上連續整數之和。解題過程 乙個數m若可以寫成以a開頭的連續n個自然數之和,則m a a 1 a 2 a n 1 n a n n 1 2,要求...
連續正整數問題
題目描述 乙個正整數有可能可以被表示為 n n 2 個連續正整數之和,如 15 1 2 3 4 5 15 4 5 6 15 7 8 請編寫程式,根據輸入的任何乙個正整數,找出符合這種要求的所有連續正整數序列。輸入資料 乙個正整數,以命令列引數的形式提供給程式。輸出資料 在標準輸出上列印出符合題目描述...
遞迴 求連續整數和
題目 輸入乙個正數n,輸出所有和為n連續正數序列。例如輸入15,由於1 2 3 4 5 4 5 6 7 8 15,所以輸出3個連續序列1 5 4 6和7 8。解題思路 首先,要找的肯定是小於等於n 2 1的數。那麼我們就可以從n 2 1開始向下每個數遞迴尋找,如果找到合適的情況,那麼久輸出即可。遞迴...