#include using namespace std; typedef long long int64; const int64 INF = 1LL << 60; int main() { int N, C, V; cin >> N >> C >> V; int64 ret = INF; for(int i = 1; i <= N; i++) { // コピーペーストの回数 int64 length = 1, cost = 0, add = 0; for(int j = 0; j < i; j++) { add = length; length += length; cost += V; if(length >= N) break; cost += C; } if(length >= N) ret = min(ret, cost); else ret = min(ret, ((N - length) + (add - 1)) / add * V + cost); } cout << ret << endl; }