$(M, \cdot)$ monoid, $A \subset M, \forall x \in M, \exists k \geq 1$ such that $x^k \in A$ Let $(M, \cdot)$ be a finite monoid. Say that $A \subset M$ has property (P) if $$
\forall x \in M, \exists k \geq 1 \text{ such that } x^k \in A.
$$ Let $s_M$ denote the minimal number of elements for a set with property (P).
Prove that there exists only one subset of $M$ with its number of elements equal to $s_M$.
I tried to assume that maybe there are more subsets with the number of elements equal to $s_M$ and then try to get a contradiction, but I didn't succeed. 
Also, $s_M = 1 \iff (M, \cdot)$ is a group, but I don't know how this can help in solving the problem.

If $A$ has property (P), then $A$ contains $E(M)$, the set of idempotents of $M$. Indeed, if $e$ is idempotent, then $e^k = e$ for all $k$, and hence $e \in A$.
Now, in a finite monoid, every element has an idempotent power. Thus $E(M)$ is the smallest set with property (P).
