Wettbewerbsfähige ProgrammierungEinfach

Längste bitonische Folge

Detaillierte Anleitung und Python-Implementierung für das Problem „Longest Bitonic Subsequence“.

Problemstellung

Einfach

Schreiben Sie eine Funktion lbs(arr), die die Länge der längsten bitonischen Teilsequenz in einem Array arr zurückgibt. Eine Teilfolge ist bitonisch, wenn sie zuerst zunimmt und dann abnimmt oder streng zunimmt oder streng abnimmt.

Einschränkungen
  • 1 <= len(arr) <= 1000
  • -10^4 <= arr[i] <= 10^4

Beispiele

Example 1
Input
lbs([1, 11, 2, 10, 4, 5, 2, 1])
Output
6
Explanation

The longest bitonic subsequence is [1, 2, 10, 5, 2, 1] or [1, 2, 4, 5, 2, 1] with length 6.

Example 2
Input
lbs([12, 11, 40, 5, 3, 1])
Output
5
Explanation

The longest bitonic subsequence is [12, 11, 5, 3, 1] or [11, 40, 5, 3, 1] with length 5.

Need a Hint?
Erwägen Sie die Verwendung spezieller Datenstrukturen für dynamische Programmierung wie Mengen oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Im Editor öffnen
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.