could drink
should drink
would have drunk
must have drunk
本题考查情态动词的用法。
must have done表示对过去的肯定推测,由前文的提示feeling uncomfortable,可知是对drink的肯定推测,故D选项符合题意。
句意:Harry感到不舒服。他一定是在昨晚的聚会上喝得太多了。