k, a, b = gets.split.map(&:to_i)

hit_only = 1 + k
hit_and_change_once = 0
hit_and_change = 0

if b>a && k >= a+1
    hit_and_change_once = b + k - (a+1)
    hit_and_change += b + (k - (a+1))/2 * (b-a) + (k - (a+1))%2
end

puts [hit_only, hit_and_change_once, hit_and_change].max

