int getSumOfDigits(char *number){ int sum = 0; char parsedNumber[10] = { '\0' }; getParsedNumber(number, parsedNumber); for (int index = 0; parsedNumber[index] != '\0'; index++) sum += myAtoI(parsedNumber[index]); return sum; }
int main() { char a[11]; char b[11]; long long radix, radix1, radix2; long long least, most; long long number1, number2; long long res; int tag; int i, j; scanf("%s%s%d%lld", a, b, &tag, &radix); if(tag == 1){ radix1 = radix; number1 = myAtoI(a, strlen(a), radix1); least = findLowRadix(b); most = (number1 + 1 > least + 1)?(number1 + 1):(least + 1); res = binarySearch(b, least, most, number1); }else if(tag == 2){ radix2 = radix; number2 = myAtoI(b, strlen(b), radix2); least = findLowRadix(a); most = (number2 + 1 > least + 1)?(number2 + 1):(least + 1); res = binarySearch(a, least, most, number2); } if(res == -1){ printf("Impossible"); }else{ printf("%lld", res); } printf("\n"); return 0; }