1475 m进制转十进制

1475 m进制转十进制

 

 时间限制: 1 s
 空间限制: 128000 KB
 题目等级 : 白银 Silver
 
 
 
题目描述 Description

将m进制数n转化成一个十进制数 m<=16

题目保证转换后的十进制数<=100

输入描述 Input Description

共一行

n和m

输出描述 Output Description

共一个数

表示m进制的n化成十进制的数

样例输入 Sample Input

1010 2

样例输出 Sample Output

10

数据范围及提示 Data Size & Hint

乘权累加法

 1 #include<iostream>
 2 #include<cmath>
 3 #include<cstring>
 4 #include<cstdio>
 5 using namespace std;
 6 int a[1001];
 7 char a1[1001];
 8 int main()
 9 {
10     int n;
11     int ans=0;
12     scanf("%s",&a1);
13     cin>>n;
14     int la=strlen(a1);
15     for(int i=0;i<la;i++)
16     {
17         if(a1[i]>=65)
18         a[i]=a1[i]-55;
19         else 
20         a[i]=a1[i]-48;
21     }
22     int i=0;
23     int now=la-1;
24     while(i<la)
25     {
26         ans=ans+a[now]*(double)(pow(n,i));
27         i++;
28         now--;
29     }
30     cout<<ans;
31     return 0;
32 }
原文地址:https://www.cnblogs.com/zwfymqz/p/6568602.html