$100$ children stand in a line each having $100$ candies. In one move, one of them may take some of their candies and distribute them to a non-empty set of the remaining children. After what least number of moves can it happen that no two children have the same number of candies?
(N. Chernyatevya)
(Translated from here.)
Answer is $30$.Let's prove that it can't be done in less then $30$ moves.
Assume that one did it in $x$ moves,$x<30$, after $x$-th move we have at least $100-x\geq 70$ children that must have over $100$ candies (because they weren't sharing candies),because all of them have different number of candies,that set of children got at least $0+1+2+3+...+70=\frac{70\cdot 71}{2}=2494$, but then the set of children that distributed the candies have less then $10000-100\cdot 71-2494=406$ but $1+2+3+...+29=435$,contradiction!
Algorithm for $30$ is easy,Let first kid give $100-2$ candies to second,second give $198-3$ candies to third,... $29$th kid give $2900-(2+3+..+29+30)=2436$ candies so 29th kid have $2536$ candies,enough to left himself only one candie and give $1$ to the $32$th ,$2$ to $33th$..$68$ to the $99$th kid and the rest (greater then $68$) to the $100$th kid.