CountsOfBitOne - Problem
Колеги реших да използвам побитови операции за задачата, но не ми излиза вeрен резултат на изхода. Някой може ли да хвърли едно око? :)
Колеги реших да използвам побитови операции за задачата, но не ми излиза вeрен резултат на изхода. Някой може ли да хвърли едно око? :)
Колега, тези 2 реда:
са напълно излишни.Това, което правиш е обръщане на вече полученото число първо към бинарна репрезентация и после от нея към инт.Просто ги изтрий, пусни цикъла да върти до 32(дори и последната 1ца да е на 2ра позиция, в паметта числото си се пази в 32 бита).
Освен това, този ред ти е грешен:
if (((mask << i) & aBinaryInteger) == 1)
Трябва да бъде if (((mask << i) & aBinaryInteger) > 0), защото:
0001101000(
&
0000001000(mask<<3)
=
0000001000(>1)