  Simon's problem is one of the most important problems demonstrating the power
of quantum computers, which achieves a large separation between quantum and
classical query complexities. However, Simon's discussion on his problem was
limited to bounded-error setting, which means his algorithm can not always get
the correct answer. Exact quantum algorithms for Simon's problem have also been
proposed, which deterministically solve the problem with O(n) queries. Also the
quantum lower bound \Omega(n) for Simon's problem is known. Although these
algorithms are either complicated or specialized, their results give an O(n)
versus \Omega(\sqrt{2^{n}}) separation in exact query complexities for Simon's
problem (\Omega(\sqrt{2^{n}}) is the lower bound for classical probabilistic
algorithms), but it has not been proved whether this separation is optimal. In
this paper, we propose another exact quantum algorithm for solving Simon's
problem with O(n) queries, which is simple, concrete and does not rely on
special query oracles. Our algorithm combines Simon's algorithm with the
quantum amplitude amplification technique to ensure its determinism. In
particular, we show that Simon's problem can be solved by a classical
deterministic algorithm with O(\sqrt{2^{n}}) queries (as we are aware, there
were no classical deterministic algorithms for solving Simon's problem with
O(\sqrt{2^{n}}) queries). Combining some previous results, we obtain the
optimal separation in exact query complexities for Simon's problem: \Theta({n})
versus \Theta({\sqrt{2^{n}}}).
