C - прикол
Mar. 6th, 2007 03:50 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Как быстро проверить, является ли число степенью двойки?
На входе дано беззнаковое целое ненулевой разрядности, допускающее все операции языка C для типа unsigned. На выходе должно быть bool.
Циклы, ясное дело, не приветствуются. Мой ответ пока заскринен.
На входе дано беззнаковое целое ненулевой разрядности, допускающее все операции языка C для типа unsigned. На выходе должно быть bool.
Циклы, ясное дело, не приветствуются. Мой ответ пока заскринен.
no subject
Date: 2007-03-06 01:41 pm (UTC)осталось исправить баг: ноль - не степень двойки, а он под эту формулу подходит
no subject
Date: 2007-03-07 08:41 am (UTC)!( x & (x - 1) ) && x
no subject
Date: 2007-03-07 04:59 pm (UTC)