Menu
Coddy logo textTech

Rückblick – Rangliste

Teil des Abschnitts Logik und Ablaufsteuerung der R-Journey von Coddy. Lektion 41 von 64.

challenge icon

Aufgabe

Mittel

Vervollständige leaderboard(names, points). Jeder Eintrag zeichnet die Punkte auf, die ein Spieler in einer Runde erzielt hat, und ein Spieler kann viele Male vorkommen. Gib eine Zeile pro Spieler zurück, 1. ana 15 (2 rounds), sortiert nach den Gesamtpunkten von hoch nach niedrig. Spieler mit derselben Gesamtpunktzahl werden alphabetisch sortiert.

Füge anschließend Best round: gefolgt vom Spieler und den Punkten des einzelnen Eintrags mit der höchsten Punktzahl hinzu, zum Beispiel cy 12. Wenn mehrere Einträge dieselbe höchste Punktzahl haben, verwende den ersten davon.

Der bereitgestellte Code liest die Runden als durch Kommas getrennte name:points-Paare ein und gibt jede zurückgegebene Zeile aus.

Probier es selbst

leaderboard <- function(names, points) {
  # Schreibe deinen Code hier
  character(0)
}

# Gelieferter Ein-/Ausgabecode: belasse ihn wie er ist
input <- suppressWarnings(readLines(file("stdin")))
pairs <- strsplit(strsplit(input[1], ",")[[1]], ":")
names <- sapply(pairs, function(p) p[1])
values <- as.numeric(sapply(pairs, function(p) p[2]))
cat(leaderboard(names, values), sep = "\n")

Alle Lektionen in Logik und Ablaufsteuerung

Übe selbstständig: Online-R-Compiler