#1136. 进制转换
进制转换
【题目描述】
小明最近正在学习怎么将十进制转换为其他进制,例如,将十进制数字475转为十六进制,老师讲解了辗转相除法:
475➗ 16=29余11
29➗ 16=1余13
1➗ 16=0余1
对于大于等于10的数字,可以用字母代替。A代表10,B代表11,C代表12,D代表13,E代表14,F代表15。所以475的16进制表达为1DB。
但是小明不会写英文字母,因此他将英文字母还是十进制数来表示,于是小明将475转为16进制数后写的是11311。他为此沾沾自喜,觉得自己就是个天才,他对于所有的十进制数转n进制数都这么处理。
谁知道有一天,老师让他们把这个n进制数转换为10进制数。小明就很困惑了。。。
给你一个n进制数k,求其对应的最小的十进制数。
【输入格式】
第一行包含一个整数n(2<=n<=10^9),代表进制.
第二行包含一个整数k(0<=k<10^60),代表这个n进制数。数据保证k不超过60位,且每个位上的数字均严格小于n,数字k没有前导0.
数据保证答案存在且不超过10^18。
【输出格式】
输出一个整数,代表问题的答案。
【样例输入1】
13
12
【样例输出1】
12
【样例输入2】
16
11311
【样例输出2】
475
【样例输入3】
20
999
【样例输出3】
3789
【提示】对于一个n进制数转十进制的方法如下:
例如5进制数432,其各个位上的权值从右向左分别为5^0,5^1,5^2,所以5进制数432对应的十进制数为4*5^2+3*5^1+2*5^0=117.
例如12进制数1A22,其各个位上的权值从右向左分为是12^0,12^1,12^2,12^3,所以12进制数1A22对应的十进制数位1*12^3+10*12^2+2*12^1+2*12^0=3194.
Statistics
Related
In following contests: