#include <stdio.h>
#include <math.h>
int pow2(double );
int pow3(double );

int main(){
  int x=0,y=0,z=0;
  double e,dy,dz;
  
  scanf("%lf",&e);
  
  if(e < 4){
    x=e;
  }else if(e < 8){
    y = pow2(e);
    x = e - pow(y,2);
  }else{
    z = pow3(e);
    if(e-(z*z*z) > 8){
      y = pow2(e-(z*z*z));
      x = e-(z*z*z)-pow(y,2);
    }else if(e-(z*z*z)-(y*y)<4){
      x = e-(z*z*z);
    } 
  }
  
  printf("%d\n",x+y+z);
  return 0;
}


int pow2(double w){
  int i;
  for(i=0;i<333333;i++){
    //printf("w=%.0f:i=%d:i^2=%d\n",w,i,i*i);
    if(i*i>w) return i-1;
    else if(i*i==w) return i;
  }
}

int pow3(double m){
  int i;
  for(i=0;i<222222;i++){
    if(i*i*i>m) return i-1;
    else if(i*i*i==m) return i;
  }
}