#include using namespace std; long long n,a,b; // (1,-1,1,-1,...) // f(#(1),#(-1)) long long f(long long x,long long y){ long long res=b*(y-x); long long paint=min(n-1,2*y); res+=a*((n-1-paint)-paint); return res; } int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); cin >> n >> a >> b; long long l=0,r=n/2; long long res=8e18; while(r-l>=5){ long long t1=(2*l+r)/3; long long t2=(l+2*r)/3; long long v1=f(n-t1,t1); long long v2=f(n-t2,t2); res=min({res,v1,v2}); if(v1>v2){l=t1;} else{r=t2;} } for(long long i=l;i<=r;i++){ // cout << i << ":" << f(i,n-i) << "\n"; res=min(res,f(n-i,i)); } cout << res << "\n"; return 0; }