Guest User

Untitled

a guest
Jun 24th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. #include <cstdio>
  2.  
  3. using namespace std;
  4.  
  5. int n;
  6. long long x[10005], k, tmp, sol;
  7.  
  8. void binary_search( long long lo, long long hi ){
  9.  
  10. long long mid;
  11.  
  12. while( lo + 1 < hi ){
  13. mid = (lo + hi)/2;
  14. tmp = mid * mid * mid;
  15. if( tmp == k ){ sol = mid; break; }
  16. if( tmp > k ){ hi = mid; }
  17. if( tmp < k ){ lo = mid; }
  18. sol = lo;
  19. //printf( "%d %d %d\n",lo ,mid, hi );
  20. }
  21.  
  22. }
  23.  
  24. int main( void ){
  25.  
  26. scanf( "%d", &n );
  27.  
  28. for( int i = 0; i < n; ++i ){
  29. scanf( "%lld", &x[i] );
  30. k = x[i];
  31. if( k == 0 ){ printf( "0\n" ); }
  32. if( k == 1 ){ printf( "1\n" ); }
  33. if( k == 2 ){ printf( "1\n" ); }
  34. if( k == 3 ){ printf( "1\n" ); }
  35.  
  36. binary_search( 0, k / 2 );
  37.  
  38. if( k != 0 && k != 1 && k != 2 && k != 3 ) printf( "%lld\n", sol );
  39. }
  40.  
  41. return 0;
  42. }
Add Comment
Please, Sign In to add comment