Description

喜闻乐见的a+b来了,当然二进制,八进制,十进制什么的估计你们也懒得写了,来个20进制的a+b

Input

给出多组a和b,每个数字一行

数字由0~9和小写字母a~j(10~19)

给出的长度不超过100

Output

每组数据输出a+b的和。

Sample Input

1234567890

abcdefghij

99999jjjjj

9999900001

Sample Output

bdfi02467j iiiij00000

HINT

这题目类似于大数加法,只是不是10进制而是20进制,方法同大数相加一样,用字符串输入,由于数字都是高位在左低位在右与数组的习惯用法相反,我们需要先倒序处理输入的数,然后各位相加逢20进1,最后倒回来输出就OK了。

AC代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main ()
{
    char s1[105],s2[105];
    int a[105],b[105],c[105];
    int k,m,n,x,ans,flag;
    while(~scanf("%s %s",s1,s2))
    {
        memset(a,0,sizeof(a));
        memset(b,0,sizeof(b));
        memset(c,0,sizeof(c));
        int len1=strlen(s1),len2=strlen(s2);
        for(int i=len1-1;i>=0;i--)                               //一般的数最低位在右最高位在左,需要对输入的数进行倒序处理 
        {
            if(s1[i]>='0'&&s1[i]<='9')
                a[len1-1-i]=s1[i]-'0';
            else if(s1[i]>='a'&&s1[i]<='j')
                a[len1-1-i]=s1[i]-'a'+10;                        //把a~j变成11~19以便一会的加法啊计算 
        }
        for(int i=len2-1;i>=0;i--)//同样是倒序处理 
        {
            if(s2[i]>='0'&&s2[i]<='9')
               b[len2-1-i]=s2[i]-'0';
            else if(s2[i]>='a'&&s2[i]<='j')
               b[len2-1-i]=s2[i]-'a'+10;
        }
        int len=max(len1,len2);
        for(int i=0;i<len;i++)
        {
            c[i]=a[i]+b[i]+c[i];
            if(c[i]>=20)                                                            //20进制的进位问题 
            {
              c[i]=c[i]-20;
              c[i+1]++;
            }
        }
        int l=max(len1,len2)+2;
        while(c[l]==0&&flag>=0)                      //两数相加最高位没有产生进位不需要输出0 如123+321不能输出0444,要把0去掉 
            l--;
        if(l<0)
           printf("0\n");
        else
        {
            for(int i=l;i>=0;i--)
            {
                if(c[i]<=9)
                   printf("%d",c[i]);
                else
                    printf("%c",c[i]-10+'a');                           //大于9就输出字母 
            }
            printf("\n");
        }
    }
    return 0;
}

ZCMU-1411 喜闻乐见的a+b相关推荐

  1. ZCMU 1411 喜闻乐见的a+b

    Problem E: 喜闻乐见的a+b Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 386  Solved: 144 [Submit][Status ...

  2. 1411: 喜闻乐见的a+b(20进制)

    分析: 本题要求进行100位以内的二十进制数字相加运算.加数和被加数的长度不一定相等.超长数字的相加,我们用字符串来处理. 先将两个字符串反转,再从第0位开始到末尾,两位依次相加,如果两位相加的结果超 ...

  3. 【ZCMU1411】喜闻乐见的a+b(20进制a+b)

    http://acm.zcmu.edu.cn/JudgeOnline/problem.php?id=1411 1411: 喜闻乐见的a+b Time Limit: 1 Sec  Memory Limi ...

  4. zcmu Problem E: 喜闻乐见的a+b

    [题目] Problem E: 喜闻乐见的a+b Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 363  Solved: 135 [Submit][S ...

  5. ZCMU 1894: Power Eggs

    http://acm.zcmu.edu.cn/JudgeOnline/problem.php?id=1894 题意: 有M个鹰蛋,N层楼,鹰蛋的硬度是E,也就是说在1~E层楼扔下去不会碎,E+1层楼扔 ...

  6. 1411区间内的真素数2

    终于有时间来改一改<1411区间内的真素数>http://www.cnblogs.com/tflsnoi/p/8026744.html这道题 1 #include<iostream& ...

  7. c#.net课程设计:ZCMU通讯录(待更新)

    大部分参考:博客https://blog.csdn.net/qq_38899124/article/details/80813862                                   ...

  8. 信息学奥赛一本通 1411:区间内的真素数 | OpenJudge NOI 1.13 23:区间内的真素数

    [题目链接] ybt 1411:区间内的真素数 OpenJudge NOI 1.13 23:区间内的真素数 [题目考点] 1. 质数 2. 数字拆分 [解题思路] 设函数判断一个数是否是质数 设函数求 ...

  9. 信息学奥赛一本通(1411:区间内的真素数)

    1411:区间内的真素数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 17046     通过数: 6833 [题目描述] 找出正整数M和N之间(N不小于M)的 ...

  10. 8.0服务器维护时间,魔兽世界8.0服务器维护把玩家心态搞崩 网友:喜闻乐见

    原标题:魔兽世界8.0服务器维护把玩家心态搞崩 网友:喜闻乐见 大家期待的魔兽世界最新资料片<争霸艾泽拉斯>终于在8月14日全球上线了,可能有许多单位都已经没人了吧,都请假回家肝等级去了. ...

最新文章

  1. C++中string erase函数的使用
  2. 使用office生成PDF文件
  3. opengl win32 nehe
  4. CSS控制的内容超过容器宽度后显示省略号
  5. android studio smssdk,SMSSDK for Android 配置
  6. ABS_MT_TOUCH_MAJOR和ABS_MT_WIDTH_MAJOR
  7. 印度将推出太阳能光伏制造政策
  8. B/S页面通用数据权限控制[转]
  9. endnote文献顺序编号不对_lbrack;求助rsqb;NoteExpress插入文献文章经修改后序号顺序不对如何修改...
  10. iOS中 语音识别功能/语音转文字教程详解
  11. win 10系统语言栏不见了怎么办?
  12. Flutter Dart 数字转成中文金额大写
  13. FreeRTOS 遇坑(1)
  14. spark常见转换算子(transformation)的操作
  15. Redis-设置过期时间及淘汰策略
  16. C++ register 关键字
  17. 小程序(原生) 引入weUI组件
  18. python识别颜色并提取轮廓_pythonopencv检测并提取目标颜色
  19. mysql 两表去重_mysql两表合并去重
  20. 经济数据预测 | Python实现CNN-LSTM股票价格预测时间序列预测

热门文章

  1. 印第安人的捕梦网 Dreamcatcher 与音乐——排箫
  2. UVA 11549 模拟 Floyed判圈法的应用 Calculator Conundrum
  3. Calculator Conundrum
  4. 查看进程名称 linux,在Linux系统服务器按名称查找进程的命令
  5. pdf.js使用方法
  6. HTML+CSS制作DNA双螺旋结构
  7. 计算机组成与嵌入式系统 百度云,计算机组成及嵌入式系统.pdf
  8. 她是一位中学计算机老师的英文,计算机柳城中学英语组 讲课老师 : 陈文化.ppt...
  9. 少林寺、孔子网站被黑
  10. 【今日CV 计算机视觉论文速览 第140期】Wed, 3 Jul 2019