Rückblick – Rangliste
Teil des Abschnitts Logik und Ablaufsteuerung der R-Journey von Coddy. Lektion 41 von 64.
Aufgabe
MittelVervollstä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
1Strings im Detail
Teilstrings mit substr()Formatierung mit sprintf()Aufteilen und VerbindenStrings durchsuchenText ersetzenWiederholung – Benutzernamen-Generator4Matrizen
Matrizen erstellenMatrizen indizierenZusammenfassungen von Zeilen und SpaltenMatrizenarithmetikRückblick – Sitzplan10Fortgeschrittener Kontrollfluss
Die switch()-FunktionVektorisierter ifelse()repeat und breakRekursive FunktionenRückblick – Notenklassifizierung2Schlüssel-Wert-Suchen
Benannte Vektor-SuchenSchlüssel prüfenSchlüssel hinzufügen und entfernenNamen durchlaufenRückblick – Aktienübersicht5Projekt – Notenbuch
Schüler hinzufügenNoten eintragen8Sortieren und Gruppieren
Vektoren sortierenNach einem Schlüssel sortierenGruppieren mit split()GruppenzusammenfassungenRückblick – Rangliste3Mengen und Zählen
Eindeutige WerteMengenoperationenZugehörigkeitstestsZählen mit table()Rückblick – Gäste einer Veranstaltung6Funktionen als Werte
Anonyme FunktionenFunktionen übergebenFunktionen zurückgebenClosures mit ZustandRückblick – Rabattregeln9Datenrahmen
Datenrahmen erstellenSpalten und ZeilenZeilen filternHinzufügen und SortierenZusammenfassung – Verkaufsbericht12Projekt – Ausgaben-Tracker
Ausgaben erfassenGesamtausgabenÜbe selbstständig: Online-R-Compiler