#include<bits/stdc++.h>
using namespace std;
const int N=1e6+7;
int n,k,ans;
bool tag[N];
int main(){
cin>>n>>k;
for(int i=1;i<=n;++i){
if(tag[i]) continue;
int cnt=0;
for(int j=i;j<=n;j*=k){
tag[j]=1;
++cnt;
}
ans+=(cnt+1)/2;
}
cout<<ans<<'\n';
return 0;
}
这份代码的时间复杂度应当是多少?