/*
* isTmax - returns 1 if x is the maximum, two's complement number,
* and 0 otherwise
* Legal ops: ! ~ & ^ | +
* Max ops: 10
* Rating: 1
*/
int isTmax (int x)
{
int t = x + 1;
return !(t + t) ^ !t;
}
Если x
является наибольшим номером дополнения 2, то 2*t
переполняется до 0, но также равно 0, если x
равно -1, поэтому мы присваиваем ему значение !t
, которое оценивается в 1. Так что мы должны получить 1, но как-то на выходе будет 0.