program biscuit
  implicit none
  integer(8) :: k, a, b, m
  m = 1_8
  read(*,*) k, a, b
  if ((k.lt.a-1_8).or.(b.le.a+2_8)) then
    write(*,'(i0)') k+1_8
    stop
  end if
  k = k - a + 1_8
  m = a
  if (mod(k,2_8).eq.1_8) then
    k = k - 1_8
    m = m + 1_8
  end if
  m = m + (k/2_8)*(b-a)
  write(*,'(i0)') m
  stop
end program biscuit