ONE = {(G) : G is a CFG such that L(G) contains exactly one string} .I know to prove this is decidable I need to create a DTM that would recognize it and HALT on all input. I am struggling at coming up with a high level definition.My Possible Solution:On input G, where G is a Context-free grammar,If non-terminal has more then one option that it can lead to, reject.Else accept. 
Decidable language: set of context-free langauges containing 1 string
formal languages;turing machines;context free
Hint: The point of this exercise is that it is decidable whether a context-free grammar generates the empty language. Using this as a black box, you can proceed as follows. On input $G$:Check if $L(G)$ is empty, and if so, reject.Find a word $w \in L(G)$.Check whether $L(G) \cap (\Sigma^* \setminus w)$ is empty.I'll let you figure out how to implement the latter two steps; step 2 uses the fact that it is decidable whether a grammar $G$ generates a given word $x$, and step 3 uses the fact that the intersection of a context-free language and a regular language is context-free (constructively).The same idea can be used to calculate $L(G)$ given that we know that $L(G)$ is finite.