PAT|PAT Basic 1022. D进制的A+B (20)(C语言实现)
我的PAT系列文章更新重心已移至Github,欢迎来看PAT题解的小伙伴请到Github Pages浏览最新内容。此处文章目前已更新至与Github Pages同步。欢迎star我的repo。
题目
输入两个非负 10 进制整数和(),输出的(
)进制数。
输入格式:
【PAT|PAT Basic 1022. D进制的A+B (20)(C语言实现)】输入在一行中依次给出 3 个整数、和。
输出格式:
输出的进制数。
输入样例:
123 456 8
输出样例:
1103
思路 A、B和A+B的范围在32位整型的范围内,因此用int就好不需要担心。
进制的转换也是很简单的,为了不使用数组,可以从最高位开始输出,这样就要先判断D进制下的位数。
代码 最新代码@github,欢迎交流
#include int main()
{
int A, B, D, Sum;
scanf("%d %d %d", &A, &B, &D);
Sum = A + B;
/* calculate the bits of Sum */
int power = 1;
/* use Sum / D >= power to avoid using long int */
while(Sum / D >= power) power *= D;
/* calculate D-base number. print them on-the-fly */
for(;
power > 0;
Sum %= power, power /= D)
printf("%d", Sum / power);
return 0;
}
推荐阅读
- leetcode|leetcode 437. Path Sum III 路径总和 III(中等)
- Node|Error:Node Sass version 5.0.0 is incompatible with ^4.0.0 问题解决
- DispatcherServlet|DispatcherServlet 分发流程
- 前端所遇问题栏|Uncaught Error: [vue-router] “path“ is required in a route configuration 的解决方案
- UI进阶路径动画
- 实时降噪(Real-time|实时降噪(Real-time Denoising)(Spatio-Temporal Filtering)
- chrome|2022软件测试技巧 Chrome 谷歌浏览器 开发者工具(F12) 快速调试xpath代码
- 21天挑战python进阶|python(爬虫篇)——Xpath提取网页数据
- GCD-dispatch_group的使用
- 非常全的一份Python爬虫的Xpath博文