Time limit 2000/4000/4000/4000 ms. Memory limit 65000/65000/65000/65000 Kb. Prepared By Ibrahim Mesecan.
Convert Into Decimal
We use positional number system. In this system, the rightmost digit has the lowest place value (1), and
each successive position to the left has a higher place value with respect to its base. That is every digit
makes a value according to its position. In the number (345)10, because 3 is in the "hundreds" position,
it's multiplied 100, such that the number (345)10 = (3*100) + (4*10) + (5*1).
Frequently, we need to use numbers in different bases. And, we convert them in to decimal system.
Write a program that is going to read a number in a different base and then the program is going to convert the given number
into decimal system.
A number can be converted in to decimal by multiplying the digits with their respective positional base powers and then summing up.
For example:
(1202)3 = (2x30 + 0x31 +2x32 +1x33) = (2+0+18+27) = (47)10
Input specification
First, you will be given two numbers: the lenght of the number (n) and the base
where 1 ≤ n ≤ 32 and 2 ≤ base < 10. Then, the following line will contain an
n-digit number. Each digit in the following line is between 0 and (base-1). The most significant digit
of the number is on the left most side.
Note: Please pay attention that the number can be upto 32 digits long. Thus you can read it digit by digit.
Output specification
Show one integer number that represents the decimal equivalent of the given number. Note that the integer result
is always within the unsigned int range (between 0 and 4,294,967,295).
Sample Input I |
Sample Input II |
3 4
123
td>
|
7 8
1234567
td>
|
Sample Output I |
Sample Output II |
27
td>
|
342391
td> |
Для отправки решений необходимо выполнить вход.
|