加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

hdu4608

发布时间:2020-12-14 04:04:33 所属栏目:大数据 来源:网络整理
导读:#includeiostream#includestring#includecstringusing namespace std;void add(char a[],char b[],char back[]){ int i,j,k,up,x,y,z,l; char *c; if (strlen(a)strlen(b)) l=strlen(a)+2; else l=strlen(b)+2; c=(char *) malloc(l*sizeof(char)); i=strlen
#include<iostream>
#include<string>
#include<cstring>
using namespace std;
void add(char a[],char b[],char back[])
{
    int i,j,k,up,x,y,z,l;
    char *c;
    if (strlen(a)>strlen(b)) l=strlen(a)+2; else l=strlen(b)+2;
    c=(char *) malloc(l*sizeof(char));
    i=strlen(a)-1;
    j=strlen(b)-1;
    k=0;up=0;
    while(i>=0||j>=0)
        {
            if(i<0) x='0'; else x=a[i];
            if(j<0) y='0'; else y=b[j];
            z=x-'0'+y-'0';
            if(up) z+=1;
            if(z>9) {up=1;z%=10;} else up=0;
            c[k++]=z+'0';
            i--;j--;
        }
    if(up) c[k++]='1';
    i=0;
    c[k]='';
    for(k-=1;k>=0;k--)
        back[i++]=c[k];
    back[i]='';
} 
 int res(char s[])
 {
     int len=strlen(s),d=0,i;
        for(i=0;i<len;i++)
        {
            d+=s[i]-'0';
            d%=10;
        }
        return d;
 }

 


int main()
{
    int T,i,j;
    
    cin>>T;
    while(T--)
    {char s[200086]={''},s1[200086]={''},s2[200086]={''},s3[200086]={''};
        cin>>s;
        int len=strlen(s);
        int d=res(s);
        if(d==0)
        {
            s1[0]=10-(s[len-1]-'0')+'0';
            add(s,s1,s2);
            d=res(s2);
            if(d==0){
                cout<<s2<<endl;continue;
            }
            s1[0]=10-d+'0';
            add(s2,s3);
            cout<<s3<<endl;
            continue;
        }
        else
        {
            if(d>s[len-1]-'0')
            {
                s1[0]=10-d+'0';
                add(s,s2);
                cout<<s2<<endl;
                continue;
            }
            else{
                s1[0]=10-(s[len-1]-'0')+'0';
            add(s,s3);
            cout<<s3<<endl;
            continue;
            }
        }
        s1[0]=d+'0';
        add(s,s2);
        cout<<s2<<endl;
    }
    return 0;
} 

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读