#include <iostream>
using namespace std;
int main()
{
for (int szam=1; szam<=100000000; szam++) {
int db = 0;
int n = szam;
while (n>0) {
db++;
n /= 10;
}
int ossz = 0;
n = szam;
while (n>0) {
int zsak = n%10;
for (int i=1; i<db; i++)
zsak *= n%10;
ossz += zsak;
n /= 10;
}
if (szam == ossz)
cout << szam << " ";
}
cout << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewogICAgZm9yIChpbnQgc3phbT0xOyBzemFtPD0xMDAwMDAwMDA7IHN6YW0rKykgewoKICAgIAlpbnQgZGIgPSAwOwoJICAgIGludCBuID0gc3phbTsKCSAgICB3aGlsZSAobj4wKSB7CgkgICAgICAgIGRiKys7CgkgICAgICAgIG4gLz0gMTA7CgkgICAgfQoJICAgIAogICAgCWludCBvc3N6ID0gMDsKCSAgICBuID0gc3phbTsKCSAgICB3aGlsZSAobj4wKSB7CgkgICAgICAgIGludCB6c2FrID0gbiUxMDsKCSAgICAgICAgZm9yIChpbnQgaT0xOyBpPGRiOyBpKyspCgkgICAgICAgICAgICB6c2FrICo9IG4lMTA7CgkgICAgICAgIG9zc3ogKz0genNhazsKCSAgICAgICAgbiAvPSAxMDsKCSAgICB9CiAgICAKCSAgICBpZiAoc3phbSA9PSBvc3N6KQogICAgCSAgICBjb3V0IDw8IHN6YW0gPDwgIiAiOwogICAgfQogICAgY291dCA8PCBlbmRsOwogICAgCiAgICByZXR1cm4gMDsKfQ==