#include "pch.h"
#include <iostream>
#include <math.h>
using namespace std;
int digital_root(int n)
{
int length = 1;
int divider = 1000000;
int d = 10;
int result = 0;
while (d > 9)
{
d = n % divider;
if (d != n)
{
length++;
}
divider /= 10;
}
divider = pow(10, length - 1);
d = 10;
int *arr = new int[length];
for (int i = 0; i < length; i++)
{
arr[i] = floor(n / divider);
result += arr[i];
n %= divider;
divider /= 10;
cout << "ELEM" << i << "=" << arr[i] << endl;
}
if (result < 10)
{
return result;
}
else
{
digital_root(result);
}
cout << "Result\t" << result << endl;
return result;
}
int main()
{
int n;
int result;
cin >> n;
digital_root(n);
cout << "Result\t" << result << endl;
}
I2luY2x1ZGUgInBjaC5oIgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxtYXRoLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGRpZ2l0YWxfcm9vdChpbnQgbikKewkKCWludCBsZW5ndGggPSAxOwoJaW50IGRpdmlkZXIgPSAxMDAwMDAwOwoJaW50IGQgPSAxMDsKCWludCByZXN1bHQgPSAwOwoJd2hpbGUgKGQgPiA5KQoJewoJCWQgPSBuICUgZGl2aWRlcjsKCQlpZiAoZCAhPSBuKQoJCXsKCQkJbGVuZ3RoKys7CgkJfQoJCQoJCWRpdmlkZXIgLz0gMTA7Cgl9CglkaXZpZGVyID0gcG93KDEwLCBsZW5ndGggLSAxKTsKCWQgPSAxMDsKCglpbnQgKmFyciA9IG5ldyBpbnRbbGVuZ3RoXTsKCQoJZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykKCXsJCgkJYXJyW2ldID0gZmxvb3IobiAvIGRpdmlkZXIpOwoJCXJlc3VsdCArPSBhcnJbaV07CgkJbiAlPSBkaXZpZGVyOwoJCWRpdmlkZXIgLz0gMTA7CgkJY291dCA8PCAiRUxFTSIgPDwgaSA8PCAiPSIgPDwgYXJyW2ldIDw8IGVuZGw7Cgl9CgkKCWlmIChyZXN1bHQgPCAxMCkKCXsKCQlyZXR1cm4gcmVzdWx0OwoJfQoJZWxzZQoJewoJCWRpZ2l0YWxfcm9vdChyZXN1bHQpOwoJfQoJCgljb3V0IDw8ICJSZXN1bHRcdCIgPDwgcmVzdWx0IDw8IGVuZGw7CglyZXR1cm4gcmVzdWx0Owp9CgppbnQgbWFpbigpCnsJCglpbnQgbjsKCWludCByZXN1bHQ7CgljaW4gPj4gbjsKCWRpZ2l0YWxfcm9vdChuKTsKCWNvdXQgPDwgIlJlc3VsdFx0IiA8PCByZXN1bHQgPDwgZW5kbDsKCQp9