# similar language by two DFA then why wrong answer

I attempted a mock paper for finite automata .so i was asked to create a DFA which accepts a language in which inputs are a,b and number of b's should be divisible by 3.The first image is my answer for which i was not given marks .but when i checked the answer of the paper they gave the second image as the correct answer.Both the DFA give the accept the language(number of b divisible by 3),so can any one tell how the second DFA in the second is better than the first one,or where did i go wrong.

• You have forgotten to label one of the arcs in (b). I assume it is b. – Shreesh Apr 26 '16 at 18:13

First DFA does not accept $\epsilon$ which has 0 number of $b$'s which is divisible by 3 (0 is said to be divisible by 3). So first answer is incorrect, where as second is correct.
• Wrong, first one is incorrect because it accepts a proper subset of language only. It does not accept $\epsilon$. – Shreesh Apr 26 '16 at 18:15