以下の値を含むテキストファイルに値を生成するシステムがあります
行 1 : 可能な合計値
2行目:配列の要素数
行 3 (必要に応じて追加行) : 数字自体
私は現在、配列の最初の整数から合計値を減算し、残りの配列を検索して、ペアが見つかるまで同じことを行うアプローチを考えています。
もう 1 つの方法は、順列と組み合わせに基づいて配列内の 2 つの整数を加算し、ペアを見つけることです。
私の分析によると、反復回数を削減するため、最初のソリューションの方が優れています。私の分析はここで正しいですか?他にもっと良いアプローチはありますか?
編集:より明確にするためにここにサンプルを示します 1行目:200行2 = 10行3:10 20 80 78 19 25 198 120 12 65
ここでの有効なペアは 80,120 です。合計すると 200 になり (入力ファイルで可能な合計値として 1 行目に表されます)、配列内のそれらの位置は 3,8 になるためです。最初の要素を取り、可能な合計値でそれを減算し、基本的な検索アルゴリズムを使用して他の要素を検索します。
ここの例を使用して、最初に 10 を取り、それを 200 で減算すると 190 が得られます。次に 190 を検索します。見つかった場合はペアが見つかり、それ以外の場合は同じプロセスを続けます。