タイトル説明
暁明は、彼が計算するのに必要と9〜16は、彼はすぐに正しい答えは100で書いた、数学の宿題をやっていた、数学、1日の非常に好きです。彼はこれに満足していなかった。しかし、彼は(少なくとも二つの数字を含む)100がどのように多くの連続した正数列の種類疑問に思いました。18,19,20,21,22:長い前に、彼は連続した正の数と100のシーケンスの別のセットを得ました。今、あなたの質問は、あなたもすぐにすべての正と連続シーケンスS?幸運を識別することができます!
出力説明:
すべての正の出力と連続数列S. 開始昇順に従ってシーケンス番号との間の昇順で昇順
解決:ダブルポインタ方法、(スライディングウィンドウ法)
クラス解決{ パブリック: ベクトル <ベクトル< 整数 >> FindContinuousSequence(int型の合計){ ベクトル <ベクトル< 整数 >> allRes。 INT phigh = 2、プラウ= 1 。 一方、(phigh> プラウ){ int型 CUR =(phigh +プラウ)*(phigh -プラウ+ 1)/ 2 。 もし(CUR < 合計) phigh ++ ; もし(CUR == 合計){ ベクトル <int型 > のres; 以下のために(int型 ; I <= phigh I ++はI =プラウ) res.push_back(I)。 allRes.push_back(RES)。 耕す ++ ; } 場合(CUR> 和) プラウ ++ 。 } 戻りallResと、 } }。