Ваш DFA правильный. Это не минимально для языка, который он принимает, но он принимает правильный язык. Меньшее устраняет состояние q4, поскольку оно эквивалентно состоянию q0; тогда состояния q0, q1, q2 и q3 соответствуют обработке префикса входа, длина которого равна 0, 1, t и 3 соответственно, по модулю 4.