2057

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2057


2057_第1张图片

翻译:我们的hdoj肯定有很多A+B问题,现在一个新的问题来了。

给你两个十六进制的整数,你的任务就是计算它们的和,并用十六进制打印出来。

输入包含多个测试用例,请处理到文件结尾。

每种情况都由两个十六进制整数A和B组成,每行由一个空格分隔。

A和B的长度小于15。

对于每个测试用例,在一行中以十六进制打印A和B的和。

思路:一开始的思路是将给的十六进制的数转化为二进制,然后再将两个二进制的数相加,将所得和转化为十六进制。后与组员讨论后被告知,c语言中有直接用于十六进制的运算,故讲问题简单化了。

做法:将输入格式变为%I64x,告知系统,我输入的是一个十六进制的数。然后判断两数相加是否大于0,若是,输出两数之和,若否,输出两数和的相反数。

2057_第2张图片
2057_第3张图片

总结:多与人讨论,才能学到一些自己没有涉略到的知识。

你可能感兴趣的:(2057)