Dajemy listę liczb całkowitych p1, ..., pk (niekoniecznie różne), gdzie każda z nich ma wartość od 1 do 9 włącznie. Używając każdego z p1, ..., pk dokładnie raz, możemy utworzyć konkatenację cyfr, aby uzyskać nową listę liczb; następnie wyprowadzamy produkt z tej nowej listy. Celem jest maksymalizacja tego produktu poprzez wybranie najlepszej kombinacji cyfr.
Na przykład dostajemy listę: 2 3 2 (oddzielone spacjami). Możemy utworzyć następujące konkatenacje:
2 3 2
(produktem tych konkatenacji jest12
)23 2
(produkt jest46
)32 2
(produkt jest64
)22 3
(produkt jest66
)
Ponieważ największym produktem, który możemy stworzyć w postaci konkatenacji, jest 66, wytwarzamy to.
Zasady:
- Musi istnieć co najmniej jedno mnożenie (tzn. Nie można po prostu połączyć wszystkich cyfr i wygenerować tego).
- Nie możesz używać innych operatorów niż mnożenie, ani wstawiać nawiasów itp.
- Załóżmy, że podana lista liczb całkowitych jest oddzielona spacjami, a wszystkie liczby całkowite mają wartości od 1 do 9.
Najkrótszy kod (w bajtach) wygrywa!
Przypadki testowe:
Wejście: 1 2 3
; Wyjście: 63
(tj. 21*3
)
Wejście: 2 5 9
; Wyjście: 468
( 52*9
)
Wejście: 1 2 3 4
; Wyjście: 1312
( 41*32
)