Not exactly the difficult question, but the only coding question. I wrote this one in Python, and the interviewer was fine with my choice of language. The question was that I will be given a string length 25, consisting of alphabet (lower and upper case) and numbers. Now, in this string some of the upper case letters are lower cased and sent to me. I have a black box fuction that returns a integer, something like 13 or 14, that says the string I have got is correct else it throws a exception. My job here, is to find the right string given a corrupted string.
Sigiloso
Due to time limitations, I went with my first instinct brute force. I took the string, and threw it in a loop to go over 25 times. Each time it encountered a letter, if it was lower case then just increment the counter, else change the letter at that position to lower case and keep the other upper case on, and in recursion go again, providing the string to the black box function. If you get a exception, handle by ignoring it, and move on to next recursion stage. In short I made a binary tree branching of upper and lower case of the letters. And thus feed each of the possibility to the validation function. This solution is not efficient, and by the time I presented my first draft, we already had over shot the interview time limit.