Einfach 0 gelöst 0% Erfolgsquote

Running Sum

Replace each value with the total so far.

Das lernst du

  • Bisherige Summen berechnen
  • Eine neue Ergebnisliste aufbauen
  • Die Idee der Präfixsumme lernen

Problem

Build a running sum: the value at position i is the sum of all numbers from position 0 through i.

Implement running_sum(numbers).

Input

numbers: The list of integers.

Output

Return the list of running totals.

Einschränkungen

0 ≤ length ≤ 100,000; totals fit in a 64-bit integer

Beispiele

Beispiel 1
Eingabe:
numbers = [1, 2, 3, 4]

Erwartete Ausgabe:
expected = [1, 3, 6, 10]
Eingabe:
std::vector<long long> numbers = {1, 2, 3, 4};

Erwartete Ausgabe:
std::vector<long long> expected = {1, 3, 6, 10};
Eingabe:
long[] numbers = new long[] {1, 2, 3, 4};

Erwartete Ausgabe:
long[] expected = new long[] {1, 3, 6, 10};

Erläuterung

Totals so far: 1, 1+2=3, 3+3=6, 6+4=10.

Beispiel 2
Eingabe:
numbers = [5, -5, 5]

Erwartete Ausgabe:
expected = [5, 0, 5]
Eingabe:
std::vector<long long> numbers = {5, -5, 5};

Erwartete Ausgabe:
std::vector<long long> expected = {5, 0, 5};
Eingabe:
long[] numbers = new long[] {5, -5, 5};

Erwartete Ausgabe:
long[] expected = new long[] {5, 0, 5};

Erläuterung

Totals: 5, 0, 5.

So gehst du vor

Versuch es zuerst allein und öffne dann einen Hinweis nach dem anderen.

Hinweis 1

Jedes Ausgabeelement hängt von der Summe aller vorherigen Elemente und sich selbst ab.

Hinweis 2

Halte beim Durchlaufen der Liste eine laufende Gesamtsumme fest.

Hinweis 3

Die erste Position sollte einfach dem ersten Eingabewert entsprechen.

Erwartete Komplexität

Zeit O(n), zusätzlicher Speicher O(n)

Referenzen

Diese Aufgabe wurde für CodeUtility angepasst. Beachte die oben genannten Vorgaben und Einschränkungen.

Von anderen lernen

Community-Lösungen

Noch keine veröffentlichten Lösungen. Löse die Aufgabe und teile als Erster eine Lösung.