#include <iostream>
#include <cmath>
using namespace std;
int convert_to_decimal (long long num, int base) {
int decimal_value = 0;
int power = 1;
while (num > 0) {
int remainder = num % 10;
num /= 10;
if (remainder >= base) {
std::cout << "Error: Invalid digit for the given base" << std::endl;
return -1;
}
decimal_value += remainder * power;
power *= base;
}
return decimal_value;
}
int main() {
long long number_in_other_base;
int base;
std::cout <<"Enter the number in another base (e.g., 1011 for binary): ";
std::cin >> base;
int result = convert_to_decimal(number_in_other_base, base);
if (result != -1) {
std::cout << number_in_other_base << " in base " << base << " is "
<< result << " in decimal." << std::endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgY29udmVydF90b19kZWNpbWFsIChsb25nIGxvbmcgbnVtLCBpbnQgYmFzZSkgewoJaW50IGRlY2ltYWxfdmFsdWUgPSAwOwoJaW50IHBvd2VyID0gMTsKCQoJd2hpbGUgKG51bSA+IDApIHsKCQlpbnQgcmVtYWluZGVyID0gbnVtICUgMTA7CgkJbnVtIC89IDEwOwoJCQoJCWlmIChyZW1haW5kZXIgPj0gYmFzZSkgewoJCQlzdGQ6OmNvdXQgPDwgIkVycm9yOiBJbnZhbGlkIGRpZ2l0IGZvciB0aGUgZ2l2ZW4gYmFzZSIgPDwgc3RkOjplbmRsOwoJCQlyZXR1cm4gLTE7CgkJfQoJCQoJCWRlY2ltYWxfdmFsdWUgKz0gcmVtYWluZGVyICogcG93ZXI7CgkJcG93ZXIgKj0gYmFzZTsKCX0KCXJldHVybiBkZWNpbWFsX3ZhbHVlOwp9CgppbnQgbWFpbigpIHsKCWxvbmcgbG9uZyBudW1iZXJfaW5fb3RoZXJfYmFzZTsKCWludCBiYXNlOwoJCglzdGQ6OmNvdXQgPDwiRW50ZXIgdGhlIG51bWJlciBpbiBhbm90aGVyIGJhc2UgKGUuZy4sIDEwMTEgZm9yIGJpbmFyeSk6ICI7CglzdGQ6OmNpbiA+PiBiYXNlOwoJCglpbnQgcmVzdWx0ID0gICBjb252ZXJ0X3RvX2RlY2ltYWwobnVtYmVyX2luX290aGVyX2Jhc2UsIGJhc2UpOwoJCglpZiAocmVzdWx0ICE9IC0xKSB7CgkJc3RkOjpjb3V0IDw8IG51bWJlcl9pbl9vdGhlcl9iYXNlIDw8ICIgaW4gYmFzZSAiIDw8IGJhc2UgPDwgIiBpcyAiCgkJCQkgIDw8ICByZXN1bHQgPDwgIiBpbiBkZWNpbWFsLiIgPDwgc3RkOjplbmRsOwoJfQoJCglyZXR1cm4gMDsKfQ==