#include <stdio.h>
#include <math.h>
int main()
{
int n, original, digit, digits = 0;
int sum = 0;
original = n;
int temp = n;
while (temp != 0)
{
digits++;
temp /= 10;
}
temp = n;
while (temp != 0)
{
digit = temp % 10;
sum
+= (int)pow(digit
, digits
); temp /= 10;
}
if (sum == original)
printf("%d is an Armstrong number.\n", original
); else
printf("%d is not an Armstrong number.\n", original
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CgppbnQgbWFpbigpCnsKICAgIGludCBuLCBvcmlnaW5hbCwgZGlnaXQsIGRpZ2l0cyA9IDA7CiAgICBpbnQgc3VtID0gMDsKICAgIHByaW50ZigiRW50ZXIgYSBudW1iZXI6ICIpOwogICAgc2NhbmYoIiVkIiwgJm4pOwogICAgb3JpZ2luYWwgPSBuOwogICAgaW50IHRlbXAgPSBuOwogICAgd2hpbGUgKHRlbXAgIT0gMCkKICAgIHsKICAgICAgICBkaWdpdHMrKzsKICAgICAgICB0ZW1wIC89IDEwOwogICAgfQogICAgdGVtcCA9IG47CiAgICB3aGlsZSAodGVtcCAhPSAwKQogICAgewogICAgICAgIGRpZ2l0ID0gdGVtcCAlIDEwOwogICAgICAgIHN1bSArPSAoaW50KXBvdyhkaWdpdCwgZGlnaXRzKTsKICAgICAgICB0ZW1wIC89IDEwOwogICAgfQoKICAgIGlmIChzdW0gPT0gb3JpZ2luYWwpCiAgICAgICAgcHJpbnRmKCIlZCBpcyBhbiBBcm1zdHJvbmcgbnVtYmVyLlxuIiwgb3JpZ2luYWwpOwogICAgZWxzZQogICAgICAgIHByaW50ZigiJWQgaXMgbm90IGFuIEFybXN0cm9uZyBudW1iZXIuXG4iLCBvcmlnaW5hbCk7CgogICAgcmV0dXJuIDA7Cn0K