import java.util.*; public class Main { static int copy; static int paste; static long[] dp; public static void main (String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); copy = sc.nextInt(); paste = sc.nextInt(); dp = new long[n + 1]; System.out.println(dfw(n)); } static long dfw(int x) { if (x == 1) { return 0; } if (dp[x] == 0) { dp[x] = Long.MAX_VALUE; for (int i = 1; i * 2 <= x + 1; i++) { dp[x] = Math.min(dp[x], dfw(i) + (x - 1) / i * paste + copy); } } return dp[x]; } }