These are called confirmatory tags, because they ask the person addressed to confirm the statement that precedes. (Check a reference like Huddleston an Pullum, A Student's Introduction to English Grammar.) Confirmatory tags are of reversed polarity. That is a negative tag (one with a negating word like not) asks for the confirmation of a positive statement (one without a negating word).
Thus
You don't like our teacher, do you?
has a negative statement: You do not like our teacher with a positive tag, and it looks for you to confirm your dislike. A confirmation would be negative:
No, I don't [like the teacher].
The reverse situation would be
You like our teacher, don't you?
which has a positive statement with a negative tag: don't you? (i.e., do you not?), and it looks for you to confirm your liking with a positive statement
Yes, I do [like the teacher].
This is not something you can figure out from logical operations on negation, so your teacher is right that it's just is the way it is. But the idiomatic response isn't one of the choices.
Note that a constant polarity tag may be attached to a sentence of the same polarity. These tags do not ask for confirmation, but rather they usually indicate surprise at the situation stated and mostly occur only with positive statements. Thus
So you like the teacher, do you?!
has positive statement (no not for the liking) and a positive tag (no not for the do), and it means, "I'm surprised that you like the teacher because he's terrible at his job." Most people wouldn't use a constant polarity negative tag, so you won't hear
So you don't like the teacher, don't you?