#include <iostream>
using namespace std;
int main(){
ios::sync_with_stdio(false);
int m,n,x,y,ans=0;
cin>>m>>n>>x>>y;
if(n==1) ans=m*x;
else while(m!=1){
if(m%n) ans+=(m%n)*x,m-=m%n;
else while(m%n==0) ans+=y,m/=n;
}
cout<<ans<<endl;
return 0;
}
但是
在输入
19 3
4 2
之后m-=m%n与m/=n就不运行了,这是为什么?
编译选项:
g++ prog.cpp -o prog -Wall -std=c++14 -g -fno-asm -static -lm -O2