zoukankan      html  css  js  c++  java
  • 大数相加

    最近没什么事,决定把杭电没提交的题一道道的做过去......= =

    A + B Problem II

    简单的大树相加的题目,以前一直觉得感觉大数相加好麻烦,都没好好的做一下,认真去写还是觉得比较简单(((o(*゚▽゚*)o)))

    代码如下:

    TIME:0ms     Memory:260K

     1 #include <iostream>
     2 #include <cstring>
     3 using namespace std;
     4 
     5 int main()
     6 {
     7     int n,i=0,k;
     8     scanf("%d",&n);
     9     while(n--)
    10     {
    11         i++;
    12        char a[1010],b[1010],c[1010];
    13         scanf("%s%s",a,b);
    14         printf("Case %d:
    ",i);
    15         getchar();
    16         printf("%s + %s = ",a,b);
    17         int lentha,lenthb,maxx,i,j,xa,xb,x;
    18         lentha=strlen(a),xa=lentha;
    19         lenthb=strlen(b),xb=lenthb;
    20         maxx=max(lentha,lenthb);
    21         x=maxx+1;
    22         memset(c,0,sizeof(c));
    23         for(j=0;j<maxx;j++)
    24         {
    25             xa--,xb--,x--;
    26             int y;
    27             char xxa,xxb;
    28             if(xa<0) xxa='0'; else xxa=a[xa];
    29             if(xb<0) xxb='0'; else xxb=b[xb];
    30             y=c[x]+((xxa-'0')+(xxb-'0'));
    31             if(y>=10)
    32             {
    33                 y=y-10;
    34                 c[x]=y+'0';
    35                 c[x-1]=1;
    36             }
    37             else c[x]=y+'0';
    38         }
    39        if(c[0]!=0) c[0]=c[0]+'0';
    40         if(c[0]==0)
    41         {
    42             for(k=0;k<maxx;k++)
    43                 c[k]=c[k+1];
    44             c[maxx]=0;
    45         }
    46          printf("%s
    ",c);
    47         if(n!=0) printf("
    ");
    48     }
    49     return 0;
    50 }
  • 相关阅读:
    day11.初识函数
    day10.文件操作
    类,对象相关的部分系统函数
    网络资源
    mysql 设置默认时间为now()
    Meta http-equiv属性详解
    php 验证码
    php 图片上传 并返回上传文件位置 支持多文件上传
    图片懒加载
    mysqy 特别小点
  • 原文地址:https://www.cnblogs.com/teilawll/p/3537530.html
Copyright © 2011-2022 走看看