Aufgabenverwaltungssystem mit Prioritäten

Go Medium structs

Aufgabe «Aufgabenverwaltungssystem mit Prioritäten»

Entwickeln Sie ein Programm zur Verwaltung einer Aufgabenliste. Jede Aufgabe wird durch eine Struktur Task mit den Feldern: ID (int), Title (string), Priority (int) und Status (string) beschrieben. Das Programm soll die Anzahl der Aufgaben einlesen, dann die Aufgaben selbst. Danach müssen alle Aufgaben ausgegeben werden, sortiert nach Priorität (aufsteigend), und bei Aufgaben mit gleicher Priorität — nach ID (aufsteigend). Geben Sie jede Aufgabe im Format aus: ID: Title [Priority] - Status.

Eingabeformat

Erste Zeile: eine ganze Zahl N (1 ≤ N ≤ 100) — die Anzahl der Aufgaben. Dann enthält jede der N Zeilen: ID (ganze Zahl), Title (Zeichenkette ohne Leerzeichen), Priority (ganze Zahl), Status (Zeichenkette ohne Leerzeichen), getrennt durch Leerzeichen.

Ausgabeformat

N Zeilen, jede im Format: ID: Title [Priority] - Status. Die Zeilen sind sortiert nach Priorität (aufsteigend), bei gleicher Priorität — nach ID (aufsteigend).

Beispiele

Beispiel 1

EINGABE
3 1 TaskA 2 Active 2 TaskB 1 Completed 3 TaskC 2 Pending
AUSGABE
2: TaskB [1] - Completed 1: TaskA [2] - Active 3: TaskC [2] - Pending

Beispiel 2

EINGABE
listen silent
AUSGABE
YES

Beispiel 3

EINGABE
2 101 Alpha 5 High 102 Beta 3 Low
AUSGABE
102: Beta [3] - Low 101: Alpha [5] - High

Beispiel 4

EINGABE
Hello Olelh
AUSGABE
YES
main.go