In a race, five runners A, B, C, D, and E finished in the following order: A is not first or last. B finished before C but after D. E finished last. Who finished first?
Answer: C. D
Since E is last and A is not first or last, D must be first, followed by B, then C, and finally E.