import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	}

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

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	}

} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	} main {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long N = Long.parseLong(sc.next()); N Long.parseLong(sc.next()) Long.parseLong Long sc.next() sc.next sc sc.close() sc.close sc int count = 1; count 1 if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		} N <= 26 N 26 {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		} int ans = (int) N - 1; ans (int) N - 1 (int) N 1 System.out.println((char)('a' + ans)) System.out.println System.out System System.out (char)('a' + ans) 'a' ans return; long checkDigits = N; checkDigits N for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		} int i = 1; int i = 1; i 1 i++ i++ i {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		} {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		} checkDigits -= (int) Math.pow(26, i) checkDigits (int) Math.pow(26, i) Math.pow Math 26 i if(checkDigits > 0) {
				count++;
			}else {
				break;
			} checkDigits > 0 checkDigits 0 {
				count++;
			} count++ count {
				break;
			} break; StringBuffer sb = new StringBuffer(); sb new StringBuffer() while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		} N > 0 N 0 {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		} long mod =  N % 26; mod N % 26 N 26 if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            } mod == 0 mod 0 {
                N--;
                mod = 25;
            } N-- N mod = 25 mod 25 {
                mod--;
            } mod-- mod sb.append((char)('a' + mod)) sb.append sb (char)('a' + mod) 'a' mod N /= 26 N 26 System.out.println(sb.reverse().toString()) System.out.println System.out System System.out sb.reverse().toString() sb.reverse().toString sb.reverse() sb.reverse sb String[] args args public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	}

} public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	}

} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long N = Long.parseLong(sc.next());
		sc.close();

		int count = 1;
		if(N <= 26) {
			int ans = (int) N - 1;
			System.out.println((char)('a' + ans));
			return;
		}

		long checkDigits = N;
		for(int i = 1; ;i++) {
			checkDigits -= (int) Math.pow(26, i);
			if(checkDigits > 0) {
				count++;
			}else {
				break;
			}
		}

		StringBuffer sb = new StringBuffer();
		while(N > 0) {
			long mod =  N % 26;
			if (mod == 0) {
                N--;
                mod = 25;
            } else {
                mod--;
            }
			sb.append((char)('a' + mod));
			N /= 26;
		}
		System.out.println(sb.reverse().toString());
	}

}