import numpy as np N = int(input()) C, V = map(int, input().split()) MAX = 10 ** 8 dp = np.full(2 * N, MAX) dp[1] = 0 for i in range(1, N): np.minimum(dp[i * 2::i], dp[i] + C + V * np.arange(1, (2 * N - 1) // i), out=dp[i * 2::i]) print(dp[N:].min())