题目描述 Description
将m进制数n转化成一个十进制数 m<=16
题目保证转换后的十进制数<=100
输入描述 Input Description
共一行
n和m
输出描述 Output Description
共一个数
表示m进制的n化成十进制的数
样例输入 Sample Input
1010 2
样例输出 Sample Output
10
数据范围及提示 Data Size & Hint
乘权累加法
#include <iostream>
#include <math.h>
#include <string.h>
using namespace std;
int main()
{
char n[50];
int m,sum=0;
cin>>n>>m;
int len=int(strlen(n));
int count=len-1;
while(count>=0)
{
if(n[count]=='0') {count--;continue;}
else if(n[count]<='9'&&n[count]>='0') {sum=sum+(n[count]-'0')*pow(m,len-1-count);count--;}
else {sum=sum+(n[count]-'A'+10)*pow(m,len-1-count);count--;}
}
cout<<sum<<endl;
return 0;
}