Digital Roots(水题)

唯一的坑点,给的数字非常大,需要用数组来保存
尝试了3次,从int,long long ,直到字符串才ac

#include<iostream>
#include<string>
using namespace std;
string get_sum(string number)
{
    long long sum = 0;
    for (int i = 0; i < number.size(); i++)
    {
        sum += number[i] - '0';
    }
    return to_string(sum);
}
int main()
{
    string a;
    while (cin >> a && a != "0")
    {
        while (a.size() != 1)
        {
            a = get_sum(a);
        }
        cout << a[0] << endl;
    }
}
发布了22 篇原创文章 · 获赞 3 · 访问量 638

猜你喜欢

转载自blog.csdn.net/qq_45520541/article/details/104833813