题目描述
定义一个正整数的十进制表示中各位数字的立方和为它的水仙花指数,给定一个整数 n,请计算它的水仙花指数。
例如n=1234 时,水仙花指数为 1 3 + 2 3 + 3 3 + 4 3 = 1 + 8 + 27 + 64 = 100 1^3+2^3+3^3+4^3=1+8+27+64=100 13+23+33+43=1+8+27+64=100
输入格式
单个整数:表示 n
输出格式
单个整数:表示n的水仙花指数。
数据范围
1 ≤ n ≤ 1 , 000 , 000 , 000 1≤n≤1,000,000,000 1≤n≤1,000,000,000
思路分析
字符串+for循环
代码
#include <bits/stdc++.h>
using namespace std;
string a;
int s;
int l(int n) {
return n * n * n;
}
int main() {
cin >> a;
for(int i = 0; i < a.size(); i++) s += l(a[i] - 48);
cout << s;
return 0;
}