zoukankan      html  css  js  c++  java
  • 1011-大数加法

    描述

     

    求两个非负整数(1000位以内)的和。

    输入

     

    两个非负整数(1000位以内),以空格分隔。

    输出

     

    两个非负整数的和。

    样例输入

    111111111111 222222222222

    样例输出

    333333333333

    #include <iostream>
    #include <string>
    using namespace std;
    #define N 1001
    int main()
    {
        char a[N],b[N];
        int sum[N];
        for (int j=0;j<N;j++)
            sum[j]=0;
        int m1,m2,m3,m4;
        cin>>a;
        m1=strlen(a);
        cin>>b;
        m2=strlen(b);
        m3=m1<m2?m1:m2;
        m4=m1>m2?m1:m2;
        for (int i=0;i<m3;i++)
            sum[m4-i]=(a[m1-i-1]-'0')+(b[m2-i-1]-'0');
        if(m1>=m2)
        {
            for(int c=0;c<(m1-m2);c++)
                sum[c+1]=(a[c]-'0');
        }
        else 
            for(int d=0;d<(m2-m1);d++)
                sum[d+1]=(b[d]-'0');
        for (int e=N;e>=0;e--)
        {
            if (sum[e]>=10)
            {
                sum[e]%=10;
                sum[e-1]+=1;
            }
        }
        if(sum[0]!=0)
            for (int k=0;k<m4+1;k++) 
                cout<<sum[k];
    
        else
        for (int f=1;f<=m4;f++)
            cout<<sum[f];
        cout<<endl;
        return 0;
    } 
    

      

  • 相关阅读:
    veil-evasion免杀处理
    对程序"加料"
    堆栈溢出
    ICMP隧道 ptunnle
    socat流量操控
    DNS隧道 iodns
    dns隧道 dns2tcpd
    ssh X协议转发
    ssh动态端口转发
    ssh远程端口转发
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436496.html
Copyright © 2011-2022 走看看