#include #include using namespace std; using vi=vector; int solve(int n, int c, int v) { int cost_min=c+v*n; int cost; for(int copy_num=1;;copy_num++) { int copy_len=(1<<(copy_num-1)); int paste_num=max((n-1-copy_len)/copy_len, 0); cost=copy_num*(c+v)+paste_num*v; // printf("copy_num=%d paste_num=%d cost=%d\n", copy_num, paste_num, cost); if(cost_min>cost) cost_min=cost; if(paste_num<=0) break; } return cost_min; } int main(void) { int n, c, v; while(scanf("%d%d%d", &n, &c, &v)==3) { printf("%d\n", solve(n, c, v)); } return 0; }