As we know Acceptence of given string by PDA in two ways Either by
1. Acceptance by final state: ( If you are scanning the input, and at the end of string machine enters to one of the final state then string is accepted.)
2. Acceptance by Empty Stack: In this case we don't bother, machine enter into final state or not, if at end of string stack is empty then we can say string is accepted.
Option D is correct:
Bcz in option D, if u take L= a^n, a is pushed into the stack and it remains in first state only, which is marked as Final state so this string is accepted by PDA (Acceptence by final state)
L= a^n b^n, as we know this string is accepted by given PDA as shown in given figure, this is also acceptence by final state). This language is not accepted by FA.
Regarding deterministic, in both the case we are deterministic to push a in to stack. So this is accepted by DPDA. so option D