HDU 又一版 A+B
来源:互联网 发布:下载itunes软件 编辑:程序博客网 时间:2024/05/01 14:46
题目:输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数。
http://acm.hdu.edu.cn/showproblem.php?pid=1877
// LANG: C++#include <stdio.h>#include <string.h>#include <stdlib.h>//http://acm.hdu.edu.cn/showproblem.php?pid=1877//输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数。//进制转换,base进制数void work(unsigned int num, int base){char str[40] = {0};int i = 0;// 判断结果是否为0if (!num){printf("0\n");return ;}while (num){str[i++] = num % base + '0';num /= base;}--i;while (i >= 0) putchar(str[i--]);putchar('\n');}//多进制转换,num=源数据,base进制数,buffer输出数据void work2(unsigned int num, int base,char* buffer){char str[40] = {0};int i = 0;int j=0;// 判断结果是否为0if (!num){printf("0\n");return ;}while (num){str[i++] = num % base + '0';num /= base;}--i;while (i >= 0){buffer[j++]=str[i--];}//printf("%s\n",buffer);}// 2 1 7int main(int argc, char **argv){unsigned int base, left, right;while (1){scanf ("%u", &base);if (!base) break;scanf("%u %u", &left, &right);left += right;char* buffer;buffer=(char*)malloc(sizeof(char*)*1024);memset(buffer,0,sizeof(char*)*1024);work2(left, base,buffer);printf("%s\n",buffer);}return 0;}
0 0
- HDU 又一版 A+B
- HDU 1877 又一版 A+B
- hdu 1877 又一版 A+B
- hdu 1877 又一版 A+B
- hdu 1877 又一版 A+B
- HDU 1877 又一版 A+B
- hdu 1877 又一版 A+B
- hdu-oj 1877 又一版 A+B
- hdu 1877_又一版 A+B
- hdu 1877 又一版 A+B 水题
- hdu---1877又一版 A+B
- hdu 1877 又一版 A+B
- HDU 1877:又一版 A+B【数学】
- hdu 1877 又一版A+B
- HDU 1877 又一版 A+B
- 又一版 A+B
- 又一版 A+B
- 又一版 A+B
- 【C语言】大数相乘
- UNP 学习笔记2
- Processing 入门
- C# 匿名方法 (转)
- 提高SQL执行效率的16种方法
- HDU 又一版 A+B
- Eclipse安装Maven插件
- 基础练习2_01字串
- C++,视觉交互,算法,vs2012,matlab2014a,opencv,Android,come on!20141010-理解c++
- ps aux 结果显示不全
- android开发中WebView的使用(附完整程序)
- ViewPage :Required method instantiateItem was not overridde
- 表单--form标签
- QT多线程