All words containing at least twice as many zeroes as ones
The language is context-free. As you read the string, you'll need a counter comparing two values: $\#_0 \cdot 2$ and $\#_1$. Such counter can be implemented using the stack of the PDA.
When a $0$ is read:

if there is a $1$ on top of the stack, pop it. If the stack is now empty, add a $0$, otherwise pop again.
else add $0$ to the stack twice

When a $1$ is read:

if there's a $0$ on top of the stack, pop it.
else add $1$ to the stack

It is easy to see* that the stack contains now the difference between $\#_0 \cdot 2$ and $\#_1$, encoded as the number of symbols on stack and the symbol used. After the entire string has been scanned, the top symbol of the stack tells which of the numbers is greater: if the top symbol is $0$ or the empty stack symbol, accept. Otherwise reject.
*If you need a more formal proof of this construction's correctness, it is fairly easy proven by induction: first establish that the symbols of the stack represent the correct counts after reading the first symbol, then perform an induction step with the assumption that the first $n$ symbols resulted a correct count on the stack and showing that the $n+1$th symbol read doesn't violate this correctness.