打个表即可
代码如下;
#include <cstdio>
#include <iostream>
#include <cstring>
#include <cctype>
#include <cmath>
#include <algorithm>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <cstdlib>
#include <vector>
#define ll long long
#define maxn 1000010
using namespace std;
int a[maxn] = {0};
int main()
{
int i, j, k, n;
for ( i = 1; i < 1000000; i++){
k = 0;
j = i;
while ( j){
k += j % 10;
j /= 10;
}
k += i;
if ( k < maxn && !a[k])
a[k] = i;
}
while ( ~scanf( "%d", &n)){
printf( "%d\n", a[n]);
}
return 0;
}