program prob6
    implicit none
    integer(8) :: K, A, B, ans, tmp
    read(*,*) K, A, B
    if(A + 2 >= B) then
        ans = 1+K
    else
        if(1+K <= A) then
            ans = 1+K
        else
            tmp = K - A + 1
            ans = A + mod(tmp, 2)
            ans = ans + tmp / 2 * (B - A)
        end if
    end if
    write(*,*) ans
    stop
contains
end program prob6