W tym wyzwaniu dotyczącym kodu prefiksu dowiedzieliśmy się, że kody prefiksów są jednoznacznie powiązane.
Oznacza to, że można je łączyć bez separatora i bez dwuznaczności.
Na przykład, ponieważ [1,2,45] jest kodem prefiksu, mogę połączyć je razem bez separatora jako takiego: 1245245112145, i nie będzie dwuznaczności.
Jednak odwrotność nie zawsze jest prawdą.
Na przykład [3,34] nie jest kodem prefiksu. Mogę jednak zrobić to samo: 3333434334333 i nie będzie żadnych dwuznaczności. Potrzebujesz tylko inteligentniejszego parsera.
Jednak [1,11] nie jest jednoznacznie konkatenowalny, ponieważ 1111 można interpretować na 5 sposobów.
Cel
Twoim zadaniem jest napisanie programu / funkcji, która pobiera listę ciągów znaków (ASCII) jako dane wejściowe i ustalenie, czy można je jednoznacznie połączyć.
Detale
Duplikat liczy się jako fałsz.
Punktacja
To jest golf golfowy . Najkrótsze rozwiązanie w bajtach wygrywa.
Przypadki testowe
Prawdziwe:
[12,21,112]
[12,112,1112]
[3,4,35]
[2,3,352]
Fałszywe:
[1,1]
[1,2,112]
[1,23,4,12,34]
[1,2,35,4,123,58,8]