#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n,k;
map<ll,bool>mp;
int main(){
ios::sync_with_stdio(false);
cin>>n>>k;
ll tot=0,rep=0;
for(ll i=2;i*i*i<=n;i++){
int r=3;
ll num=i*i*i;
if(r>=k&&mp[num]==0){
mp[num]=1;tot++;
if((ll)sqrt(num)*(ll)sqrt(num)==num)rep++;
}
while(num*i<=n){
num*=i;r++;
if(r<k)continue;
if(mp[num]==0){
mp[num]=1;tot++;
if((ll)sqrt(num)*(ll)sqrt(num)==num)rep++;
}
}
}
ll ans=tot+1;
if(k==2)ans+=(ll)sqrt(n)-rep-1;
if(k==1)ans=n;
cout<<ans;
return 0;
}