Biorąc pod uwagę 7-segmentowy wyświetlacz z niektórymi segmentami włączonymi, a niektórymi wyłączonymi, znajdź sekwencję cyfr (0-9), tak że po przełączeniu odpowiednich segmentów dla każdej cyfry wszystkie segmenty zostaną wyłączone.
Przykład
_
_ [3] => | [1] => [OFF]
_ |
Liczby i odpowiadające im segmenty:
_ _ _ _ _ _ _ _
| | | _| _| |_| |_ |_ | |_| |_|
|_| | |_ _| | _| |_| | |_| _|
Zasady
Codegolf ⊨ wygrywa najkrótszy wpis.
Wejście
Niepusta lista segmentów, które są włączone, podana jako
Sekwencja liczb. Segmenty są ponumerowane od góry do dołu, od lewej do prawej; zaczynając od 0 lub 1. Liczby nie muszą być uporządkowane.
Pojedyncza 7-bitowa cyfra. MSB / LSB nie określono (dlatego możesz wybrać).
Znaki nieliczbowe między liczbami są dozwolone (ale nie muszą być obsługiwane).
Na przykład. dla numeru 7
: 136
lub 1010010
lub0100101
Wynik
Sekwencja liczb do „zastosowania” na wyświetlaczu. Nie podlega żadnym ograniczeniom, takim jak kolejność cyfr. Na przykład. w stan początkowy odpowiadające liczbie 1
, ważne wyjścia będzie 1
, 111
, 010
itp
Alternatywnym wyjściem jest 10-bitowa cyfra (ponownie, MSB / LSB jest twoim wyborem). Na przykład. dla 1
jako danych wejściowych wyjściem byłoby 1000000000
lub 0000000001
.
Niektóre kombinacje mają kilka niepowtarzalnych rozwiązań, np. segmenty odpowiadające dużej literze H
można wyłączyć 013
, ale także 489
i 0258
.
Jeśli nie ma rozwiązania (które moim zdaniem nie jest możliwe), dane wyjściowe są puste.
301
dla H
).
17
, 08
i 1479
. Rozwiązania dla górnych segmentów pionowych, od lewej do prawej, to 39
i 59
. Rozwiązania dla dolnych segmentów pionowych, od lewej do prawej, to 56
i 2389
.
2
nie zawsze jest konieczne, ponieważ możesz go zastąpić albo 0468
, 1358
albo 1369
, w zależności od tego, czy chcesz 0
, 8
lub 9
w swojej odpowiedzi, ale nie ma możliwości całkowitego wyeliminowania 7
i myślę, że musisz mieć co najmniej jeden z 1
i 3
.