Код: Выделить всё
! ~ & ^ | +
TMax — это максимальное число, дополняющее до двух.
Мои мысли до сих пор были такими:
Код: Выделить всё
int isTMax(int x)
{
int y = 0;
x = ~x;
y = x + x;
return !y;
}
Вот в чем проблема:
Код: Выделить всё
/*
* isTMax - return 1 if x is the maximum, two's complement number,
* and 0 return otherwise.
* Legal ops: ! ~ & ^ | +
* Max ops: 10
* Rating: 1
*/
int isTMax(int x) {
int y = 0;
x = ~x;
y = x + x;
return !y;
}
Подробнее здесь: https://stackoverflow.com/questions/730 ... ing-shifts
Мобильная версия