LeGarrette Blount found the end zone with 31 seconds left and finished with 71 yards and two touchdowns as the Tampa Bay Buccaneers dominated the second half to pull out a 24-20 victory over the host Minnesota Vikings on Sunday.

Josh Freeman completed 22 of 31 passes for 243 yards and a score for the Buccaneers, who bounced back from a season-opening loss in Week 1.

Trailing 20-17 with 4:12 left, Tampa Bay (1-1) got the ball back on its own 39-yard line and needed nine plays to take the lead. Freeman completed 5 of 6 passes on the drive before turning around and handing it to Blount for the last 4 yards.

Adrian Peterson finished with 120 yards on 25 carries for Minnesota (0-2).

The Vikings took a 17-0 lead into the half thanks to a pair of rushing touchdowns by Peterson and a defensive effort that limited the Buccaneers to 53 yards before the break.

Tampa Bay turned those numbers around in the third quarter, allowing Minnesota a total of one yard over its first two drives while cashing in on offense with Blount’s 27-yard touchdown run and a 36-yard field goal that cut it to 17-10 heading to the fourth.

The Vikings got on the board again with a field goal early in the fourth, but Freeman’s 25-yard hookup with Arrelious Benn brought Tampa Bay within three.

Donovan McNabb was 18 of 30 for 220 yards for Minnesota.