Bazı bölümleri açık ve bazıları kapalı olan 7 segmentli bir ekran verildiğinde, her basamak için karşılık gelen bölümleri değiştirdikten sonra tüm bölümler kapatılacak şekilde bir basamak dizisi (0-9) bulun.
Misal
_
_ [3] => | [1] => [OFF]
_ |
Sayılar ve karşılık gelen segmentleri:
_ _ _ _ _ _ _ _
| | | _| _| |_| |_ |_ | |_| |_|
|_| | |_ _| | _| |_| | |_| _|
kurallar
Codegolf ⊨ en kısa giriş kazanır.
Giriş
Açık olan segmentlerin boş bir listesi,
Bir sayı dizisi. Segmentler yukarıdan aşağıya, soldan sağa doğru numaralandırılmıştır; 0 veya 1'den başlayarak. Sayıların sırayla olması gerekmez.
Tek bir 7 bitlik rakam. MSB / LSB belirtilmedi (böylece seçebilirsiniz).
Sayılar arasında sayısal olmayan karakterlere izin verilir (ancak desteklenmesi gerekmez).
Örneğin. sayı için 7
: 136
veya 1010010
veya0100101
Çıktı
Ekrana "uygulanacak" bir sayı dizisi. Rakamların sırası gibi hiçbir şekilde kısıtlanmamıştır. Örneğin. numaraya karşılık gelen ilk durumu için 1
, geçerli bir çıkış olur 1
, 111
, 010
vs.
Alternatif bir çıkış 10 bitlik bir rakamdır (yine, MSB / LSB seçiminizdir). Örneğin. için 1
olduğu gibi giriş, çıkış olur 1000000000
ya da 0000000001
.
Bazı kombinasyonların birkaç tekrarlayıcı olmayan çözümü vardır, örn. büyük harfe karşılık gelen segmentler , ve ile de H
kapatılabilir .013
489
0258
Hiçbir çözüm yoksa (ki bu mümkün olmadığını düşünüyorum), çıktı boş.
301
için H
).
17
, 08
ve 1479
. Soldan sağa, üst dikey segmentlerine yönelik çözümler vardır 39
ve 59
. Soldan sağa doğru alt dikey segmentler için çözümler: 56
ve 2389
.
2
ya ile değiştirin, çünkü her zaman gerekli değildir 0468
, 1358
ya da 1369
, sen istemenize bir bağlı 0
, 8
ya 9
da cevap ama orada ortadan kaldırmak için bir yol var 7
hiç ve senin az birine de olması gerekir düşünüyorum arasında 1
ve 3
.