Byłem dzisiaj w autobusie i zauważyłem ten znak:
seated standing wheelchairs
max1 37 30 00
max2 36 26 01
max3 34 32 00
Liczba pasażerów siedzących, pasażerów i wózków inwalidzkich musi być nie większa niż jakikolwiek rząd w tabeli. (Zobacz szczegóły czatu.)
Na potrzeby tego wyzwania uogólnimy ten pomysł: biorąc pod uwagę nieujemną listę liczb całkowitych o ściśle dodatniej długości N (liczba typów pasażerów) i nieujemną macierz liczb całkowitych o ściśle dodatnich wymiarach (N kolumn i jeden rząd na konfigurację lub transpozycja tego), zwróć listę indeksów / prawdy-fałszów / dwóch unikalnych wartości wskazujących, które ograniczenia konfiguracji są spełnione.
Np. Z powyższą macierzą:
30,25,1→ [1](0-indeksowane) [2](1-indeksowane) lub [false,true,false](Boolean) lub ["Abe","Bob","Abe"](dwie unikalne wartości) itp.
Następujące przypadki testowe wykorzystują powyższą macierz i 0/1 dla false / true:
[30,30,0]→ [1,0,1]
[30,31,0]→ [0,0,1]
[35,30,0]→ [1,0,0]
[0,0,1]→ [0,1,0]
[0,0,0]→ [1,1,1]
[1,2,3]→[0,0,0]
Następujące przypadki testowe wykorzystują następującą macierz:
1 2 0 4
2 3 0 2
[1,2,1,2]→ [0,0]
[1,3,0,1]→ [0,1]
[1,2,0,3]→ [1,0]
[1,2,0,1]→[1,1]
0i jakakolwiek fałsz zamiast 1?)
[x,31,z]wyklucza max1i max2ponieważ nie zezwala na 31 osób.
[30,31,0]być[1, 1, 1], ponieważ jest objętymax3?