Yeni sayılar veya şekiller oluşturmak için belirli sayıda eşleşme eklemeyi, kaldırmayı veya taşımayı içeren eşleşmeleri olan birçok bulmaca vardır . Bu dijital bir saatte böyledir.
12 saatlik bir dijital saatte geçerli bir zaman verildiğinde, saatteki her görünür basamağın o basamak haline gelmesi için en az satırın hareket ettirilmesini gerektiren basamağın çıktısını alın. Birden fazla basamak minimumsa, bunların tümünü çıktılayın. Her basamağı aynı yapmak mümkün değilse, çıktı -1
veya 0 dışında bir falsy değeri (bunlardan çok şey alırsınız).
Saat haneleri şöyle görünür:
|
|
_
_|
|_
_
_|
_|
|_|
|
_
|_
_|
_
|_
|_|
_
|
|
_
|_|
|_|
_
|_|
_|
_
| |
|_|
Test Durumları:
Giriş: 123
Saat ekranı:
_ _
| : _| _|
| : |_ _|
Çıktı: 4
Açıklama: için ekran 1:23
toplam 12 satır çizilmesini gerektirir. Bu nedenle, her rakamın aynı olması için her rakamın 4 satırı olmalıdır. 4 satırlı tek rakam 4
. Bu nedenle cevap olmalı 4
.
Giriş: 1212
Saat ekranı:
_ _
| _| : | _|
| |_ : | |_
Çıktı: -1
Açıklama: için ekran 12:12
14 satır gerektirir. 14 bölü 4 tamsayı değildir, bu nedenle her basamağın aynı olması imkansızdır.
Giriş: 654
Saat ekranı:
_ _
|_ : |_ |_|
|_| : _| |
Çıktı: 5
Açıklama: Toplam satır sayısı 15'tir. 15 bölü 3'tür, bu nedenle her basamağın 5 satırı olmalıdır. 5 hatları tek basamak vardır 2
, 3
ve 5
. Cevap, 5
her basamağı 5 yapmak için sadece 2 hareket gerektirmesidir.
_ _
|_ : |_ |_|
_| : _| _|
Gördüğünüz gibi yapmanız gereken tek şey, başlangıçta 4 olan basamağın sağ üstündeki çizgiyi yukarı taşımaktır ve elde edersiniz 5:55
. Her basamağı yapmak için a 2
veya 3
2'den fazla hareket gerekir.
Giriş: 609
Saat ekranı:
_ _ _
|_ : | | |_|
|_| : |_| _|
Çıktı: 609
( 6,0,9
veya [6,0,9]
ayrıca tamam).
Açıklama: 6
,, 0
ve 9
6 satırı olan tek basamaktır. Bu nedenle, onlar da tek olası çözümlerdir. Bunlardan herhangi birini tek basamak haline getirmenin iki hareket gerektireceğini görmek zor değil. Bu nedenle, üç basamağın tümünü çıkarırsınız.
Notlar:
- Giriş süresi geçerli olmakla birlikte, çıkış süresi geçerli değildir (örneğin
999
, bir çıkış iyi olduğu için). - Girdi konusunda çok esnekim. Satır başına 0 girmeniz gerekebilir. Ondalık virgül içeren bir sayı kullanabilirsiniz. Bir dize kullanabilirsiniz. Bir dizi kullanabilirsiniz. Her basamak için bir parametreniz olabilir.