int mask=0b1; int allBit=log2(value); int numerBit=allBit-bitIndex+1; for (int i=1;i<numerBit;i++, mask<<=1); return value^mask; немножно переделал, но все равно не принимает
int mask=0b1; int allBit=log2(value); int numerBit=allBit-bitIndex+1; for (int i=1;i<numerBit;i++, mask<<=1); return value^mask; немножно переделал, но все равно не принимает
int flipValue=value; int allIndex=0; for (int i=value;i>0;i/=2,allIndex++); int n=allIndex-bitIndex; return value ^= (1L << n);