import java.util.*;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    }

} import java.util.*; util.* java public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    }

} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    } main {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long n = sc.nextLong(); n sc.nextLong() sc.nextLong sc long base = 26L; base 26L long max = 26L; max 26L int d = 1; d 1 Map<Integer, Long> mmap = new HashMap<>(); mmap new HashMap<>() mmap.put(d, max) mmap.put mmap d max mmap.put(0, 0L) mmap.put mmap 0 0L while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        } max < n max n {
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        } base *= 26L base 26L max += base max base d++ d mmap.put(d, max) mmap.put mmap d max String ans = ""; ans "" for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        } int i = d-1; int i = d-1; i d-1 d 1 i >= 0 i 0 i-- i-- i {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        } {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        } base /= 26L base 26L int a = (int)((n - mmap.get(i) -1) / base); a (int)((n - mmap.get(i) -1) / base) (n - mmap.get(i) -1) n - mmap.get(i) -1 n mmap.get(i) mmap.get mmap i 1 base char c = (char)((int)'a' + a); c (char)((int)'a' + a) (int)'a' a ans += c ans c n -= base * (a+1) n base * (a+1) base (a+1) a 1 System.out.println(ans) System.out.println System.out System System.out ans sc.close() sc.close sc String[] args args public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    }

} public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    }

} Main
import java.util.*;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextLong();
        long base = 26L;
        long max = 26L;
        int d = 1;
        Map<Integer, Long> mmap = new HashMap<>();
        mmap.put(d, max);
        mmap.put(0, 0L);
        while(max < n){
            base *= 26L;
            max += base;
            d++;
            mmap.put(d, max);
        }
        String ans = "";
        for (int i = d-1; i >= 0; i--) {
            base /= 26L;
            int a = (int)((n - mmap.get(i) -1) / base);
            char c = (char)((int)'a' + a);
            ans += c;
            n -= base * (a+1);
        }
        System.out.println(ans);
        sc.close();

    }

}
