import java.util.*

fun main(args: Array<String>) {
    val reader = Scanner(System.`in`)
    var N = reader.nextLong()
    var copyN = N
    var alpabitNums = 1
    var startTypes = 1L
    do {
        startTypes *= 26
        if(startTypes >= copyN){
            break
        }
        copyN -= startTypes
        alpabitNums++
    }while (true)

    startTypes = startTypes.div(26)
    var resultStr = ""
    //copyN = N
   // println(alpabitNums)
    //println(copyN)
    //println(startTypes)
    repeat(alpabitNums){
        if(it== alpabitNums - 1){
            resultStr += 'a' + copyN.toInt() - 1
        }
        else {
            var value= copyN / startTypes
            var startValue= 'a'
            if(copyN.rem(startTypes) > 0){
                resultStr += (startValue + value.toInt())
                copyN -= (value) * startTypes
            }
            else {
             resultStr += (startValue + value.toInt() - 1)
                copyN -= (value- 1) * startTypes
            }
            
        }
        startTypes = startTypes.div( 26)
    }
    println(resultStr)
}