进制转换 - 九度教程第62题

该博客介绍了如何处理九度教程第62题,即从M进制转换到N进制的问题。涉及大数运算,包括高精度整数的加减乘除,并强调了在处理大数据时的运算复杂度分析,特别是高精度整数的运算会增加时间复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

进制转换 - 九度教程第62题

题目

时间限制:1 秒 内存限制:32 兆 特殊判题:否
题目描述:
将 M 进制的数 X 转换为 N 进制的数输出。
输入:
输入的第一行包括两个整数:M 和 N(2<=M,N<=36)。
下面的一行输入一个数 X,X 是 M 进制的数,现在要求你将 M 进制的数 X 转换成 N 进制的数输出。
输出:
输出 X 的 N 进制表示的数。
样例输入:
16 10
F
样例输出:
15
提示:
输入时字母部分为大写,输出时为小写,并且有大数据。
来源:
2008年清华大学计算机研究生机试真题

该题初看起来很像一般的进制转换,但提示中明确告知,输入会有较大的数据,即为了完成需要的进制转换,需要使用高精度整数。同时,考虑到进制转换的内容,高精度整数需要进行以下运算:高精度整数与普通整数的求积,高精度整数之间求和,高精度整数除以普通整数,高精度整数对普通整数求模等。

#include <stdio.h>
#include <string.h>
#define maxDigits 100

struct bigInteger{//高精度整数结构体
    int digit[maxDigits];
    int size;
    void init(){//初始化
        for(int i=0;i<maxDigits
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值