#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include <map>
#include <vector>
#include <queue>
#include <deque>
#include <set>
#include <stack>
#include <algorithm>
#include <array>
#include <unordered_set>
#include <unordered_map>
#include <string>
using namespace std;

bool rcmp(int a, int b) { return a>b; }
typedef long long LL;



char ib[1333333];
int main() {
    int n, i, k;
    scanf("%d", &n);
    k = (n-1)/36;
    n%=36;
    if (n==0) n=36;
    for (i=1; ; i++) {
        if (9-i>=n) break;
        n-=(9-i); 
    }
    ib[0]=i+'0';
    ib[1]=n+i+'0';
    i=2; while(k) { ib[i++]=ib[1]; k--; }
    ib[i]=0;
    printf("%s\n", ib);
    return 0;
}