首页 > 其他 > 详细

E - Digital Roots HDU - 1013

时间:2019-04-06 17:58:56      阅读:127      评论:0      收藏:0      [点我收藏+]

wa了两遍:

(1)没有弄清楚输入数据的范围,实际上是字符串输入,数字很大。

(2)此题太水,没有标数据范围。

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<string>
#include<cstring>

#define ll long long
using namespace std;
#define maxn 1000000000
char s[maxn];

int main()
{
    while(~scanf("%s",s))
    {
        if(s[0]==0)
            break;
        ll sum=0;
        ll len=strlen(s);

        //(1)
        for(int i=0; i<len; i++)
        {
            sum+=s[i]-0;
        }

        ll tmp=sum;
        while(sum>=10)
        {
            sum=0;
            while(tmp)
            {
                sum+=tmp%10;
                tmp/=10;
                
            }
            tmp=sum;
        }
        cout<<sum<<endl;
    }
    return 0;
}

 

E - Digital Roots HDU - 1013

原文:https://www.cnblogs.com/pipitongkw1/p/10662261.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!