In this the worst case will happen as follows :-
$1^{st}$ $13*3 = 39$ cards that we pick up turns out to be any one of daimond or spades or clubs but not hearts i.e.
Now when we pick the next $3$ cards they are guaranteed to be hearts.($\because$ we have already picked cards from all other suits)
$\therefore$ We need to pick $13+13+13+3= 42$ cards in order to guarantee that there are atleast $3$ cards of hearts in the selected cards.
So option $4$ is the correct option.