# UVa 343

Jump to navigation
Jump to search

## Contents

## 343 - What base is this[edit]

## Summary[edit]

Given two numbers n1, n2 calculate find a the bases of both numbers such that n1 (base b1)= n2 (base b2).

## Explanation[edit]

- Calculate the base 10 equivalent of n1 (base 1) and n2 (base 2) for each base and when they are equal to each other they are both equivalent.
- White space should not affect the input.

## Gotchas[edit]

- The problem states the bases are from 1 to 36 but there is no base 1 for this question!!
- Use unsigned long long just incase, the cases will most likely overflow signed int.

## Optimizations[edit]

You could generate the values for the bases and store it into an array. The lookup will save you the cost of calculating it every time.

## Input[edit]

12 5 10 A 12 34 123 456 1 2 10 2 10 36 35 Z Z 35 0 0

## Output[edit]

12 (base 3) = 5 (base 6) 10 (base 10) = A (base 11) 12 (base 17) = 34 (base 5) 123 is not equal to 456 in any base 2..36 1 is not equal to 2 in any base 2..36 10 (base 2) = 2 (base 3) 10 (base 27) = 36 (base 7) 35 (base 10) = Z (base 36) Z (base 36) = 35 (base 10) 0 (base 2) = 0 (base 2)