ホームページ >バックエンド開発 >PHPチュートリアル >javascript - 100 などの値と配列を指定すると、配列から N 個の要素を選択します。これらの N 要素の合計も 100 になります。結果は 1 つだけ得られます。
配列のような:
リーリー合計が 100 になる配列要素を見つけます:
リーリー配列のような:
リーリー合計が 100 になる配列要素を見つけます:
リーリーリーリー
Python バージョンを見てみましょう:
リーリーその考えはとてもシンプルですelements
是否能加出 target
、考えられるのは 2 つだけです:
element[-1]
才能加出 target
-> 我要能夠使用 elements[:-1]
加出 target-elements[-1]
それを行うためにelement[-1]
就能加出 target
-> 我要能夠使用 elements[:-1]
加出 target
を使用する必要はありません
境界条件は:
いつtarget
為 0
時,代表我什麼都不用就能加出來,所以 return True, []
いつelements
為空或是 target
為負值時,代表永遠都加不出來了,所以 return False, None
テスト:
リーリー結果:
リーリー余談ですが、この質問を見ると非常に親近感が湧きますが、解決のスピードなども考慮するともっと面白いと思います。
私は以前この分野で研究を行ったことがあり、変形について疑問を提起しました:
今日は、
elements
,在給定另外一個整數的 多重集 叫做targets
,試問是否存在若干個 子多重集,每個 子多重集 的元素和恰好有一個在targets
で対応するターゲットと呼ばれる整数のマルチセット (負の数を表すことは問題ありません) (マルチセットはセットですが、要素は繰り返し出現することができます) が与えられます。
定義がわからなくても大丈夫、例を挙げてみましょう:
リーリーこの例には解決策があります:
リーリー の各要素は 1 回しか使用できないことに注意してください!elements
構成の問題。 leetcode の元のタイトルを見てください:
リーリー
ループ内での再帰