fork download
  1. #define _USE_MATH_DEFINES
  2. #include <math.h>
  3. #include <stdio.h>
  4.  
  5. int myLog2(int x)
  6. {
  7. int retVal = 0;
  8. int temp;
  9. int shift;
  10. int y = x;
  11.  
  12. temp = y >> 0x10;
  13. shift = !!temp << 4;
  14. retVal += shift;
  15. y >>= shift;
  16.  
  17. temp = y >> 0x08;
  18. shift = !!temp << 3;
  19. retVal += shift;
  20. y >>= shift;
  21.  
  22. temp = y >> 0x04;
  23. shift = !!temp << 2;
  24. retVal += shift;
  25. y >>= shift;
  26.  
  27. temp = y >> 0x02;
  28. shift = !!temp << 1;
  29. retVal += shift;
  30. y >>= shift;
  31.  
  32. temp = y >> 0x01;
  33. retVal += temp;
  34.  
  35. return retVal;
  36. }
  37.  
  38. int main(void)
  39. {
  40. for (int i1 = 1; i1 >= 1; i1++)
  41. {
  42. if (ilogb(i1) != myLog2(i1))
  43. {
  44. printf("%d\n", i1);
  45. break;
  46. }
  47. }
  48.  
  49. return 0;
  50. }
Time limit exceeded #stdin #stdout 5s 9296KB
stdin
Standard input is empty
stdout
Standard output is empty