Top 150-InterviewEinfach

Autoflotte

Detaillierte Anleitung und Python-Implementierung für das Problem „Autoflotte“.

Problemstellung

Einfach

Auf einer einspurigen Straße fahren n Autos zum selben Ziel. Das Ziel ist target Meilen entfernt.

Sie erhalten zwei ganzzahlige Arrays position und speed, beide mit der Länge n, wobei position[i] die Position des iten Autos und speed[i] die Geschwindigkeit des iten Autos (in Meilen pro Stunde) ist.

Ein Auto kann niemals an einem anderen Auto vor ihm vorbeifahren, aber es kann es einholen und mit der gleichen Geschwindigkeit von Stoßstange zu Stoßstange fahren. Das schnellere Auto wird langsamer, um sich an die Geschwindigkeit des langsameren Autos anzupassen. Der Abstand zwischen diesen beiden Autos wird ignoriert (es wird angenommen, dass sie sich an derselben Position befinden).

Eine Fahrzeugflotte besteht aus einer nicht leeren Gruppe von Fahrzeugen, die an derselben Position und derselben Geschwindigkeit fahren. Ein einzelnes Auto ist auch eine Autoflotte.

Geben Sie die Anzahl der Fahrzeugflotten zurück, die am Zielort ankommen.

Schreiben Sie eine Funktion carFleet(target: int, position: List[int], speed: List[int]) -> int.

Einschränkungen
  • n == len(position) == len(speed)
  • 1 <= n <= 10^5
  • 0 < target <= 10^6
  • 0 <= position[i] < target
  • 0 < speed[i] <= 10^6
  • All positions are unique

Beispiele

Example 1
Input
target = 12, position = [10, 8, 0, 5, 3], speed = [2, 4, 1, 1, 3]
Output
3
Explanation

Cars at positions 10 and 8: car at 8 catches car at 10 (both arrive at time 1), forming 1 fleet. Car at 0: arrives at time 12. Car at 5: arrives at time 7. Car at 3: arrives at time 3, catches car at 5 at time 7, but car at 5 arrives at 7 too. Cars at 3 and 5 form a fleet. Total: 3 fleets.

Example 2
Input
target = 10, position = [3], speed = [3]
Output
1
Explanation

Only one car, so one fleet.

Example 3
Input
target = 100, position = [0, 2, 4], speed = [4, 2, 1]
Output
1
Explanation

All cars eventually form a single fleet.

Need a Hint?
Erwägen Sie die Verwendung stapelspezifischer Datenstrukturen 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.