zoukankan      html  css  js  c++  java
  • ocrosoft Contest1316

    http://acm.ocrosoft.com/problem.php?cid=1316&pid=10

    题目描述

    求两个不超过200位的非负整数的和。

     

    输入

    有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。

     

    输出

    一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。

     

    样例输入

    22222222222222222222
    33333333333333333333

    样例输出

    55555555555555555555

    代码:

    #include <bits/stdc++.h>
    using namespace std;
     
    #define N 1001
    int main() {
        char ch1[N], ch2[N];
        int  num1[N], num2[N];
        int len1, len2, j, maxx, k ;
     
        memset(ch1, 0, sizeof(ch1));
        memset(ch2, 0, sizeof(ch2));
        memset(num1, 0, sizeof(num1));
        memset(num2, 0, sizeof(num2));
        scanf("%s", ch1);
        scanf("%s", ch2);
        len1 = strlen(ch1);
        len2 = strlen(ch2);
     
        k = 0;
        for(int j = len1 - 1; j >= 0; j--)
            num1[k ++] = ch1[j] - '0';
        k=0;
        for(int j = len2 - 1; j >= 0; j--)
            num2[k ++] = ch2[j] - '0';
     
        maxx = len1 > len2 ? len1 : len2;
        for(int j = 0; j < maxx; j ++){
            num1[j] += num2[j];
            if(num1[j] >= 10) {
                num1[j] -= 10;
                num1[j + 1] ++;
            }
        }
        if(num1[maxx])
            printf("%d", num1[maxx]);
        for(int j = maxx - 1; j >= 0; j --)
            printf("%d", num1[j]);
        printf("
    ");
        return 0;
    }
    

      

  • 相关阅读:
    pygame各个模块概述
    安装pygame
    pygame系列
    把字符串转换成整数
    不用加减乘除做加法
    求1+2+3+...+n
    孩子们的游戏(圆圈中最后剩下的数)
    翻转单词顺序列
    左旋转字符串
    和为s的两个数字
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/9728709.html
Copyright © 2011-2022 走看看