値のシーケンス[1,2,3,4,1,5,1,6,7]があります。長さが長くなる。しかし、関数は以前の数よりも低い数に達するとカウントを停止する必要があります。この場合の答えは[1,2,3,4]です。それはリセットされる前に4つの値を持っています。このためにPythonコードを書くにはどうすればいいですか?シーケンスから最大長のサブシーケンスを抽出する[PYTHON]
注:「最も長くなる部分配列」を見つけることは一般的な課題であると思われます。オンラインで検索すると、配列全体の長さを数える数多くの解決策が見つかり、この場合、[1,2,3,4,5,6,7]が返されます。それは私が探しているものではありません。
各サブシーケンスを数え、以前の数よりも小さい数に達するとカウントをリセットする必要があります。カウントされたすべてのサブシーケンスを比較し、最も長いシーケンスを返す必要があります。
ありがとうございます。
と結果に
max
を呼び出すことにより、最長で入手できますか? StackOverflowはコード作成サービスではありません。 –入力で返されるもの:[[1,2,3,9,2,3,4,5,3,0,1,2,3,4,5,6] ' – nephi12
アルゴリズムは各部分列の長さを格納するので、1,2,3,9は4つの値、2,3,4,5は4,3は1の値、0,1,2,3,4,5はそれぞれ1,2,3,4,5、 6は6つの値なので、最後の最長のサブシーケンスのみを返します。 –