You have $10$ bags with marbles. Each bag has $2000$ marbles. Standard marbles weight $10$g. However, one bag has marbles that all weight $9$g and one bag has marbles that all weight $11$g.
If you can only use a scale once (one that displays the numerical weight), how can you determine which bag has the $9$g marbles and which bag has $11$g marbles?
I've been mulling this one over for a bit and discovered plenty of wrong ways to do this, but not the right way yet. Anyone have any ideas on how to tackle this problem?
Mark the bags $1$ to $10$. Pick $2^1$ balls from the first bag, $2^2$ balls from the second bag and in general pick $2^k$ balls from the bag marked $k$. If all bags had balls of equal weight, the sum would be $20460$g. If bag $i$ has $9$g balls and bag $j$ has $11$g balls, the sum of weight of all balls would be $$20460-2^i + 2^j = x$$ Any integer of the form $2^j-2^i$ can be expressed only in a unique way, which would identify the bags for us.
EDIT:
To be a bit more clear, if $x>20460$, we would then end up with $2^j-2^i = x-20460$, i.e., $2^i(2^{j-i}-1)$. Note that $2^{j-i}-1$ is odd. Hence, $i$ is the highest power of $2$ in $x-20460$. Now this also fixes $j$. Similarly, for $x<20460$, $i$ and $j$ interchange roles.
FURTHER EDIT:
We could also take a very higher power, i.e., $f(k) = k^m$, though $m=2$ will not work since we have $\color{red}{8^2-7^2=4^2-1^2}$.