Bugün işe geldiğimde arabamın kilometre sayacının 101101'de olduğunu fark ettim. Bu serin bir sayı çünkü ikili (ve bir palindrom, ama bu önemli değil). Şimdi, bir dahaki sefere ikili bir kilometre sayacı okumam olacağını bilmek istiyorum. Sürüş sırasında kilometre sayacını okuyamıyorum, çünkü bu tehlikeli olurdu, bu yüzden işe geldiğimde veya eve geldiğimde ikili olması gerekecek.
Ofisime gidip gelirken gerçekten kötü trafik var, bu yüzden her gün farklı bir rota seçmem gerekiyor.
Bu zorluğun amaçları için, bir gün gidiş-dönüş bir yolculuktur ve işe gidip gelirim.
Kilometre sayacının ilk okumasını ve her bir yoldaki mil miktarını temsil eden 10 elemanlık bir diziyi almanız gerekir. Bir ikili kilometre sayacı okuması elde edene kadar bu dizi tekrarlanmalıdır. Daha sonra ikili okumaya gelene kadar geçen gün sayısını çıkarmalısınız.
Hem rota için milaj hem de kilometre sayacı okuması pozitif tamsayılar olacaktır. Gün sayısı ya olacak ya x
da x.5
, bu nedenle gün sayımınızın yarım gün boyunca kayan noktayı desteklemesi gerekir. Gün sayısı bir tamsayı ise, çıktısını almanıza gerek yoktur .0
. Kilometre sayacı her zaman sonunda bir ikili duruma ulaşacaktır.
Herhangi bir giriş / çıkış biçimi kabul edilebilir ve standart boşluklara izin verilmez.
Test senaryoları:
101101, [27, 27, 27, 27, 27, 27, 27, 27, 27, 27] == 165.0
1, [13, 25, 3, 4, 10, 8, 92, 3, 3, 100] == 22.5
2, [2, 3, 1, 2, 7, 6, 10, 92, 3, 7] == 2.0