Alle Herausforderungen
Einfach 0 gelöst 0% Erfolgsquote

Above-Average Values

Keep the values that are greater than the average.

Das lernst du

  • Zuerst einen Durchschnitt berechnen
  • Werte im zweiten Durchlauf filtern
  • Die ursprüngliche Reihenfolge erhalten

Problem

Compute the average of the list, then keep only the values strictly greater than it, in their original order.

Implement above_average(numbers).

Input

numbers: The list of integers.

Output

Return the values above the average (an empty list for an empty input).

Einschränkungen

0 ≤ length ≤ 10,000; -1,000,000 ≤ each value ≤ 1,000,000

Beispiele

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

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

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

Erwartete Ausgabe:
long[] expected = new long[] {10};

Erläuterung

The average is 20 / 5 = 4; only 10 is greater than 4.

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

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

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

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

Erläuterung

Every value equals the average 5, so none is greater: [].

So gehst du vor

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

Hinweis 1

Berechne zuerst den Durchschnitt der Liste und behalte dann nur Werte, die strikt darüber liegen.

Hinweis 2

Dafür braucht man meist einen Durchlauf für die Gesamtsumme und einen zweiten für die Treffer.

Hinweis 3

Wenn die Liste leer ist, sollte das Ergebnis ebenfalls leer sein.

Erwartete Komplexität

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

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.