Top 150-InterviewMittel

Hausräuber

Detaillierte Anleitung und Python-Implementierung für das Problem „Hausräuber“.

Problemstellung

Mittel

Sie sind ein professioneller Räuber, der Häuser entlang einer Straße ausrauben will. In jedem Haus ist ein bestimmter Geldbetrag versteckt. Die einzige Einschränkung, die Sie davon abhält, jedes einzelne auszurauben, besteht darin, dass benachbarte Häuser über angeschlossene Sicherheitssysteme verfügen und automatisch die Polizei verständigt wird, wenn in derselben Nacht in zwei benachbarte Häuser eingebrochen wird.

Geben Sie anhand eines ganzzahligen Arrays, das den Geldbetrag jedes Hauses darstellt, den maximalen Geldbetrag zurück, den Sie heute Nacht ausrauben können, ohne die Polizei zu alarmieren.

Schreiben Sie eine Funktion rob(nums: List[int]) -> int.

Einschränkungen
  • 1 <= len(nums) <= 100
  • 0 <= nums[i] <= 400

Beispiele

Example 1
Input
nums = [1,2,3,1]
Output
4
Explanation

Rob house 1 (money = 1) then rob house 3 (money = 3). Total = 1 + 3 = 4.

Example 2
Input
nums = [2,7,9,3,1]
Output
12
Explanation

Rob house 1 (money = 2), rob house 3 (money = 9) and rob house 5 (money = 1). Total = 12.

Need a Hint?
Erwägen Sie die Verwendung von 1D-DP-spezifischen Datenstrukturen wie Sets 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.