#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef unsigned int uint; typedef unsigned char uchar; typedef unsigned long long ulonglong; bool hasInput(); ulonglong digsum(ulonglong num); void calculate(); void writeOutput(); void reset(); ulonglong n = 0, p = 0; int main(int argc, char **argv) { while (true) { reset(); if (!hasInput()) break; calculate(); writeOutput(); } return 0; } void reset() { n = p = 0; } bool hasInput() { cin >> n; return n > 0; } ulonglong digsum(ulonglong num) { ulonglong dsum = 0; while (num > 0) { dsum += num % 10; num /= 10; } return dsum; } void calculate() { ulonglong sn = digsum(n); for (ulonglong i = 11; ; ++i) { ulonglong snp = digsum(n * i); if (sn == snp) { p = i; break; } } } void writeOutput() { cout << p << endl; }