https://beta.atcoder.jp/contests/abc080/tasks/abc080_b
解法
https://beta.atcoder.jp/contests/abc080/submissions/1828747
f(N)を求めよう。
これは10進法で表記した時の各桁の総和であるが、10で割りながら、最小位の桁を足していけばいい。
後は割り切れるか判定してハーシャッド数か確かめる。
int N; //--------------------------------------------------------------------------------------------------- void _main() { cin >> N; int fx = 0; int x = N; while (x) { fx += x % 10; x /= 10; } if (N % fx == 0) printf("Yes\n"); else printf("No\n"); }