首页 > 代码库 > (HDU)1720 -- A+B Coming (A+B来了)

(HDU)1720 -- A+B Coming (A+B来了)

题目链接:https://vjudge.net/problem/HDU-1720

十六进制转化为10进制A+B,可以%x强制转换,但是还是勤奋点吧。

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <cmath>
 4 #include <iostream>
 5 #include <algorithm>
 6 #include <string>
 7 #include <cstdlib>
 8 
 9 using namespace std;
10 
11 int work(char *x)
12 {
13     int len,i,sum=0;
14     len=strlen(x);
15     for(i=0;i<len;i++)
16     {
17         if(x[i]>=A&&x[i]<=F) sum=sum*16+(x[i]-A+10);
18         if(x[i]>=a&&x[i]<=f) sum=sum*16+(x[i]-a+10);
19         if(x[i]>=0&&x[i]<=9) sum=sum*16+(x[i]-0);
20     }
21     return sum;
22 }
23 
24 int main()
25 {
26     char a[1000],b[1000];
27     while(~scanf("%s %s",a,b))
28         printf("%d\n",work(a)+work(b));
29 }

 

(HDU)1720 -- A+B Coming (A+B来了)