Zusammenstellung von Ketten aus Fragmenten mit maximaler Länge
Kotlin
Hard
functions
Aufgabe «Zusammenstellung von Ketten aus Fragmenten mit maximaler Länge»
Gegeben sind N Zeichenketten, die aus lateinischen Kleinbuchstaben bestehen (Länge jeder Zeichenkette von 1 bis 100). Es ist eine Funktion zu schreiben, die eine Liste von Zeichenketten entgegennimmt und die maximale Länge einer Kette zurückgibt, die durch sequentielles Verketten der Zeichenketten gebildet werden kann, sodass das letzte Zeichen der aktuellen Zeichenkette mit dem ersten Zeichen der nächsten übereinstimmt. Jede Zeichenkette darf höchstens einmal verwendet werden. Wenn keine Kette gebildet werden kann, wird 0 zurückgegeben.
Eingabeformat
Die erste Zeile ist eine ganze Zahl N (1 ≤ N ≤ 20). Danach folgen N Zeichenketten, eine pro Zeile.
Ausgabeformat
Eine ganze Zahl – die maximale Länge der Kette (Summe der Längen aller Zeichenketten in der Kette).
Beispiele
Beispiel 1
EINGABE
10
20
AUSGABE
0
Beispiel 2
EINGABE
15
15
AUSGABE
0
main.kt