Finden Sie die längste Zahl von Wahrheiten in einer Liste von Booleschen Werten. Geben Sie dieselbe Liste mit allen anderen gefälschten Wahrheiten zurück.
Input-Output
Eine Liste; Jedes übliche Format (z. B. eine durch Trennzeichen getrennte Liste als Zeichenfolge).
Einzelheiten
Richtig und falsch kann alles sein, was Ihre Sprache normalerweise für diese Werte verwendet, oder die Ganzzahlen 1 und 0. Wenn Sie einzelne Zeichen verwenden, kann die Liste eine Verkettung sein (z. B. 10001
. ).
Wenn es für den längsten Lauf ein Unentschieden gibt, lassen Sie alle Bindungsläufe wahr und verfälschen Sie alle kürzeren Läufe.
Beispiele
input ↦ output
1,0,1,0,1 ↦ 1,0,1,0,1
1,1,0,1,1,0,1 ↦ 1,1,0,1,1,0,0
1,1,0,1,1,1,0,1,1 ↦ 0,0,0,1,1,1,0,0,0
1,1,1 ↦ 1,1,1
0,0,1 ↦ 0,0,1
0,0 ↦ 0,0
1,1,1,0,0,0,1,1,1,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0 ↦ 0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0
(direkt von https://stackoverflow.com/q/37447114 )