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]
0
i jakakolwiek fałsz zamiast 1
?)
[x,31,z]
wyklucza max1
i max2
ponieważ nie zezwala na 31 osób.
[30,31,0]
być[1, 1, 1]
, ponieważ jest objętymax3
?