tests = int(input()) for case in range(1, tests+1): n = int(input()) # binary search on 26 * (1+2+3+...k) = 26 * (k+1)*k/2 lo = 0 hi = pow(10, 7) # invariant: [lo, hi] is the smallest value with 26*(k+1)*k/2 > n while hi - lo >= 1: mid = (hi + lo) // 2 val = 13 * (mid+1) * mid if val >= n: hi = mid else: lo = mid + 1 # lo is the sequence we want, where nth character resides. subtract = 13 * (lo) * (lo-1) n -= subtract i = lo ind = (n-1) // i character = chr(ord('a') + ind) print(f"Case #{case}: {character.upper()}")