fun intLong() = readLine()?.split(" ")?.map(String::toLong) ?: TODO()
fun main(args: Array<String>) {
    val (k, a, b) = intLong()
    if (k <= a || a >= b) {
        println("${k + 1}")
        return
    }
    val aa = a + 1
    val t = (b - a) * ((k - aa) / 2)
    val r = (k - aa) % 2
    println("${Math.max(b + t + r, k + 1)}")
}