#include <bits/stdc++.h>   using namespace std;   template <class T>   T max(T a, T b, T c) {     return max(a, max(b, c));   }   template <class T>   T min(T a, T b, T c) {     return min(a, min(b, c));   }   const double PI = 2.0 * acos(0.0);   const int mx[] = {0, 1, 0, -1};   const int my[] = {-1, 0, 1, 0};   int check(long long s) {     int res = 0;     while (s > 0) res += s % 10, s /= 10;     return res;   }   int main() {     vector<int> ans;     int a, b, c;     ans.clear();     scanf( %d%d%d , &a, &b, &c);     for (int i = 1; i <= 81; i++) {       long long tmp = b;       for (int j = 1; j <= a; j++) tmp *= i;       tmp += c;       if (tmp < 1e9 && check(tmp) == i) ans.push_back(tmp);     }     sort(ans.begin(), ans.end());     printf( %d n , ans.size());     for (int i = 0; i < ans.size(); i++) {       if (i > 0) putchar(   );       printf( %d , ans[i]);     }     putchar(  n );     return 0;   }   