N, A, B = map(int, input().split()) if 2 * A > B: # Compute maximum even and odd transitions possible if (N-1) % 2 == 0: t_even = N - 1 else: t_even = N - 2 t_odd = (N - 1) if (N-1) % 2 else (N - 2) # Calculate f for even t_even sum_adjacent_even = (N-1) - 2 * t_even sum_S_even = N - t_even f_even = A * sum_adjacent_even - B * sum_S_even # Calculate f for odd t_odd sum_adjacent_odd = (N-1) - 2 * t_odd sum_S_odd = N - (t_odd + 1) f_odd = A * sum_adjacent_odd - B * sum_S_odd result = min(f_even, f_odd) else: # Consider t=0 (even) and t=1 (odd) sum_adjacent_even = N - 1 sum_S_even = N f_even_t0 = A * sum_adjacent_even - B * sum_S_even sum_adjacent_t1 = (N-1) - 2 * 1 sum_S_t1 = N - 2 f_odd_t1 = A * sum_adjacent_t1 - B * sum_S_t1 result = min(f_even_t0, f_odd_t1) print(result)