Meydan okuma
32 bit ikisinin tamamlayıcı biçiminde bir tamsayı verildiğinde , ikili gösterimde ikinci en az anlamlı sıfır basamağının dizinini döndürün; burada bir indeksi 0
en az anlamlı biti ve en önemli biti temsil eden bir indeksi döndürür 31
.
İkinci sıfır yoksa, 0'ı, herhangi bir negatif sayıyı, herhangi bir yanlış değeri döndürebilir veya bir hatayı kendi dilinizde anlamlı olacak şekilde bildirebilirsiniz.
İsterseniz 1-endeksleme kullanabilirsiniz, ancak aşağıdaki test senaryoları 0-endeksleme kullanacaktır.
İsterseniz işaretsiz tamsayılar kullanabilirsiniz; bunu yaparsanız, aralıktaki tamsayıları işlemeniz gerekir [0, 2^32)
. İşaretli tamsayılar kullanırsanız, aralıktaki tamsayıları işlemeniz gerekir [-2^31, 2^31)
. Buradaki test senaryolarında imzalı tamsayılar kullanılır, ancak -x
(imzalı) 2^32 - x
(imzasız) olduğuna dikkat edin .
Test Durumları
0 (0b00) -> 1 1 (0b001) -> 2 10 (0b1010) -> 2 11 (0b01011) -> 4 12 (0b1100) -> 1 23 (0b010111) -> 5 -1 (0b11..11) -> Yok -2 (0b11..10) -> Yok -4 (0b11..00) -> 1 -5 (0b11..1011) -> Yok -9 (0b11..10111) -> Yok 2 ^ 31-2 (0b0111..1110) -> 31
puanlama
Bu kod golf , bu yüzden her dilde en kısa cevap kazanır!
[0, 2^32)
.
0b...
girdi olarak mı alıyoruz ?
2^32-1
çünkü geri dönmemem gerekiyordu 33
.