Here is a simple way of finding - in a way that you coudn't cheat the winner - the winner in a contest with any number of participations.
You hash a random number with a reasonable number of digits, like 10 digits for instance, and publish that hash in advance.
Then you rule something like, the list of participants will be shifted (in one shift: the one that was in first place becomes in second place, the one that was in second place becomes in third place, and so on and so forth, till the last participant in the list that becomes on top in that shift) as many times as the random number that was generated, that you did know in advance, and that you had made its hash public.
The owner of the contest, cannot cheat because he doesn't know how many people will participate in total and the number of shifts will be set in advance.
Better than random.org, for sure
Yahoo¬!
~ In cryptography we trust ~