hdu ACM Steps 1.2.3 A+B Coming

Posted invoid

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdu ACM Steps 1.2.3 A+B Coming相关的知识,希望对你有一定的参考价值。

模拟题。

16进制转化为10进制相加。toupper函数为小写转换为大写,isalpha函数判断是否为字母。

#include<cstdio>
#include<cstring>
#include<cctype>
using namespace std;
const int maxn = 100 + 10;
const int base = 16;

char s[5][maxn];
int a,b;

int trans(int m) {
    int ans=0,n=strlen(s[m]);
    for(int i=0;i<n;i++) {
        if(isalpha(s[m][i])) {
            s[m][i]=toupper(s[m][i]);
            ans+=(s[m][i]-A+10);
        }
        else ans+=(s[m][i]-0);
        ans*=base;
    }
    ans/=base;
    return ans;
}

int main() {
    while(scanf("%s",s[1])!=EOF) {
        scanf("%s",s[2]);
        a=trans(1);
        b=trans(2);
        printf("%d\n",a+b);
    }
    return 0;    
}

以上是关于hdu ACM Steps 1.2.3 A+B Coming的主要内容,如果未能解决你的问题,请参考以下文章

acm题,hdu1236排名steps1.3.1,求助不知哪里有问题

hdu ACM Steps 1.3.1 第二小整数

hdu ACM Steps 1.2.5 find your present

hdu ACM Steps 1.2.4 Box of Bricks

[ACM] hdu 1253 胜利大逃亡 (三维BFS)

HDU 2094 产生冠军