Menu
CoddyTech

Wiederholung – Tag-Filter

Teil des Abschnitts Logik & Ablauf der Swift-Journey von Coddy. Lektion 22 von 56.

challenge icon

Aufgabe

Mittel

Du filterst Artikel nach Tags. Lies drei Zeilen:

  1. Die Tags eines Artikels (durch Kommas getrennt, dürfen Duplikate enthalten)
  2. Die vom Leser mit „Gefällt mir“ markierten Tags (durch Kommas getrennt)
  3. Die vom Leser blockierten Tags (durch Kommas getrennt)

Gib in dieser Reihenfolge aus:

  1. Tags: <n>, wobei n die Anzahl der eindeutigen Tags des Artikels ist
  2. Matches: <...>: Tags, die der Artikel mit liked gemeinsam hat, alphabetisch sortiert und mit , verbunden
  3. Hidden: <...>: Tags, die der Artikel mit blocked gemeinsam hat, alphabetisch sortiert und mit , verbunden
  4. Eines von: Verdict: show, Verdict: hide oder Verdict: skip.

Regeln für das Urteil:

  • hide, wenn der Artikel mindestens ein blockiertes Tag hat
  • andernfalls show, wenn er mindestens ein „Gefällt mir“-Tag hat
  • andernfalls skip

Für die Eingabe swift,ios,swift,ui / swift,vapor / android lautet die Ausgabe:

Tags: 3
Matches: swift
Hidden: 
Verdict: show

Probier es selbst

let articleTags = Set(readLine()!.components(separatedBy: ","))
let liked = Set(readLine()!.components(separatedBy: ","))
let blocked = Set(readLine()!.components(separatedBy: ","))

// TODO: Tags-Anzahl, Übereinstimmungen, Ausgeblendet, Urteil drucken

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Swift-Playground