#include <cstdio>
#include <algorithm>
#include <cmath>
#include <cstring>
using namespace std;

typedef unsigned long long llint;

char s[30003];

int main( void ) {
  scanf( "%s", s );
  int y, l = strlen( s );
  scanf( "%d", &y );

  long double w = 0;
  for( int i = 0; i < l; ++i )
    w = w*10 + s[i]-'0';
  w = log( w );
  
  llint lo = 0, hi = (1LL<<63);
  while( lo < hi ) {
    llint mid = ( lo+hi )/2;
    if( log(mid)*y < w ) lo = mid+1; else
      hi = mid;
  }

  if( fabs( log(lo)*y - w ) > 1e-12 ) {
    long double lo = 1e17, hi = 1e30;
    for( int it = 0; it < 10000; ++it ) {
      long double mid = ( lo+hi )/2;
      if( log(mid)*y < w ) lo = mid; else
	hi = mid;
    }
    
    printf( "%.Lf\n", lo );
    return 0;
  }
  printf( "%llu\n", lo );
  return 0;
}
