The "puzzle" to be solved is a hash (of recent transactions and an arbitrary number) with certain required characteristics, and finding a valid solution is a matter of chance - basically through brute force. The fastest supercomputers do have greater chances of finding a solution (because they're testing more hashes per second), but they aren't guaranteed to win every time.