Diophantine number has full measure but is meager This an exercise 3 on Terence Tao's blog:

A real number $x$ is Diophantine if for every $\varepsilon > 0$ there exists $c_\varepsilon > 0$ such that $|x - \frac{a}{q}| \geq \frac{c_\varepsilon}{|q|^{2+\varepsilon}}$ for every rational number $\frac{a}{q}$. Show that  the set of Diophantine real numbers has full measure but is meager.

I have no idea how to solve this problem. Any help, please.
Thanks very much!
 A: It suffices to consider the numbers in some bounded interval, such as $[0,1]$. For $\epsilon>0$ and $q\in \mathbb N$ let 
$$A(\epsilon,q)=\left\{x\in [0,1]: \left|x-\frac{a}{q}\right|<\frac{1}{q^{2+\epsilon}} \ \text{ for some }  a  \right\}$$
The set $A(\epsilon,q)$ consists of about $q$ intervals of size $2/q^{2+\epsilon}$. So, its measure is about $2/q^{1+\epsilon}$. Since $\sum_{q\in\mathbb N}|A(\epsilon,q)|<\infty$, the Borel-Cantelli lemma implies that the set $A(\epsilon)$ of numbers $x$ that belong to infinitely many of $A(\epsilon,q)$ has measure zero. Consequently, the set 
$$\mathcal A = \bigcup_{n\in\mathbb N} A(1/n)$$
also has measure zero. By definition, if $x$ is non-Diophantine, there exists $\epsilon>0$ and   sequences $\{q_k\}$, $\{a_k\}$ such that $|x-a_k/q_k|q^{2+\epsilon}\to 0$. Hence, $x\in \mathcal A$. This proves that the set of non-Diophantine numbers has measure zero. 
Concerning meagerness: for $k\in \mathbb N$ let 
$$B(k)=\left\{x\in\mathbb R: \left|x-\frac{a}{q}\right|\ge \frac{1}{kq^3} \ \text{ for all } a,q\right\}$$  This set is closed and has empty interior (as it contains no rational numbers). Therefore, the union $\bigcup_{k\in\mathbb N} B(k)$ is meager. This union contains all Diophantine numbers.  
