How interesting. I stopped reading after the problem was presented and started doing it on paper. In about 15 minutes I had the correct answer, and the process I used was effectively identical to its implementation in Prolog.
IMHO, once the problem is turned into symbols, I seriously doubt that merely 2% of the population can solve this. It’s likely a much higher percentage, easily an order of magnitude higher, and only requires minimal Prolog or similar experience to get started with.
Have to keep this in mind as an interview question, though. Thanks!