Peter F. answered 02/24/23
The answer is d) Should have done.
You should have done your homework before you came to the lesson.
In the sentence above, the adverb 'before' implies that something has happened in the past--which therefore refers directly to the past tense of an English verb and its companion literary components in "should have done".
"Should do" is written in the present tense. "Should be doing" is written in the present progressive tense. "Should be done" is grammatically incorrect since it needs the a preposition (in this case, the preposition 'with') after 'done' in order to make it grammatically correct.