import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		long num = in.nextLong();
		String s;
		long firstIndexAlpha = (long) 'a'; // アルファベットの最初の文字
		long sizeAlpha = 26; // アルファベットの個数
		if (num <= 0) {
			/* 0以下はブランクで返す */
			

		} else if (num <= sizeAlpha) {
			/* 1～26までの処理 */
			s = String.valueOf((char) (firstIndexAlpha + num - 1));
			System.out.println(s);

		} else {
			/* 27以上の処理 */

			long offset = num - 1; // 0からの連番に補正した値
			long tmp = offset;
			String str = "";
			while (true) {
				long div = tmp / sizeAlpha; // 商
				long mod = tmp % sizeAlpha; // あまり
				/* 1～26までの処理 */
				s = String.valueOf((char) (firstIndexAlpha + mod));
				str = s + str;
				if (div <= 0) {
					break;
				}
				tmp = (div - 1);
			}
			System.out.println(str);

		}
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz