[hide]
C++
將字元轉整數來取得每一位數字:- #include<bits/stdc++.h>
- using namespace std;
- int n;
- int compute(int n)
- {
- int total=0;
- for(int i=1; i<n; i++)
- {
- int sum=0;
- string str=to_string(i);
- int len=str.length();
- for(int j=0; j<len; j++)
- {
- int t=str[j]-'0';
- sum+=pow(t, len);
- }
- if(sum==i)
- {
- cout<<i<<endl;
- total+=i;
- }
- }
- return total;
- }
- int main()
- {
- cin>>n;
- cout<<compute(n)<<endl;
- return 0;
- }
複製代碼 以不斷取餘數來取得每一位數字:- #include<bits/stdc++.h>
- using namespace std;
- int n;
- int compute(int n)
- {
- int total=0;
- for(int i=1; i<n; i++)
- {
- int t=i, sum=0;
- string str=to_string(t);
- int len=str.length();
- for(int j=0; j<len; j++)
- {
- sum+=pow(t%10, len);
- t/=10;
- }
- if(sum==i)
- {
- cout<<i<<endl;
- total+=i;
- }
- }
- return total;
- }
- int main()
- {
- cin>>n;
- cout<<compute(n)<<endl;
- return 0;
- }
複製代碼 |