1 条题解
-
0
题解
核心方法:秦九韶式累积
若一个 进制数的数码依次为 ,其值为:
可以改写成:
因此从左到右扫描,每读一位执行:
ans = ans * K + 当前位数值字符转数值规则:
0到9:c-'0';A到F:c-'A'+10。
最大可能值超过 32 位有符号整数,应使用
long long或unsigned long long。正确性说明
扫描前 位后,
ans等于这 位组成的 进制前缀的十进制值。加入下一位时,原前缀整体左移一位,相当于乘以 ,再加上新数码,因此递推后仍保持该性质。扫描结束时,ans就是完整数字的十进制值。复杂度
所有字符串总长度为 :
- 时间复杂度:;
- 额外空间复杂度:(不计输入字符串)。
- 1
信息
- ID
- 4945
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- 递交数
- 9
- 已通过
- 2
- 上传者
粤公网安备44195502000195号