#include <bits/stdc++.h>
using namespace std;
inline int read() {
  int x = 0, t = 1, c;
  while (!isdigit(c = getchar()))
    if (c == '-') t = -1;
  while (isdigit(c)) x = x * 10 + c - '0', c = getchar();
  return x * t;
}
int steps[100010], ele[100010], cnts = 0;
int dp[100010], from[100010], e[100010];
char c = 'a' - 1;
void Solve(int m) {
  if (!m) {
    putchar('z');
    return;
  }
  c++;
  for (int j = 0; j < e[m]; j++) putchar(c);
  Solve(from[m]);
}
int main() {
  for (int i = 1; (long long)i * (i + 1) / 2 <= 1000000; i++)
    ele[cnts] = i + 1, steps[cnts++] = i * (i + 1) / 2;
  for (int i = 1; i <= 100000; i++) {
    dp[i] = 2147483647;
    for (int j = 0; j < cnts && i >= steps[j]; j++) {
      if (dp[i - steps[j]] + 1 < dp[i]) {
        dp[i] = dp[i - steps[j]] + 1;
        from[i] = i - steps[j];
        e[i] = ele[j];
      }
    }
  }
  Solve(read());
}
