[ブルーブリッジカップ] [前の質問]回文数
最後の1つが、すべての合計を引き継いで、最終的な数、定義された要件の合計値を取得するためにすべての10%は、* 10
I / 10たびにする必要がありますが、ない:最終合計が、私は逆の順序、注意を払うの結果でありますあなたが最初の一時を定義する必要がありますサイクルを開始するたびにだから私は、値を変更します。算出した合計として。
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int flag = 1;
for(int i = 10000; i < 999999; i++)
{
int num = 0;
int sum = 0;
int temp = i;
while(temp > 0)
{
sum = sum + temp % 10;
num = num * 10 + temp % 10;
temp /= 10;
}
if(sum == n && num == i)
{
flag = 0;
cout<<i<<endl;
}
}
if(flag)
cout<<"-1";
return 0;
}
- 参考:リンク