A wretched game at least yielded a bit of symmetry. North Carolina, which couldn’t stop Villanova’s last shot a year, stopped everything Gonzaga tried at the end of this NCAA final to take the title the Tar Heels felt should have been theirs last season. Isaiah Hicks, over whose flailing arms Villanova’s Kris Jenkins had hoisted the championship-winning shot and who’d had a rough tournament, produced the night’s biggest basket, a banker that pushed Carolina’s lead to three points with 26 seconds left.

The rest was Gonzaga messing up, which Gonzaga did for most of a second half that saw the Zags muster but 30 points. Nigel Williams-Goss had his shot blocked by Kennedy Meeks. Justin Jackson dunked at the other end. Thankfully, the game was decided. Carolina would win 71-65.

“It was an ugly game,” North Carolina coach Roy Williams said, telling no lies. “I don’t think either team played very well.”

Gonzaga led 35-32 at halftime, a deficit that flattered the Heels. They’d made 30.6 percent of their shots. Justin Jackson had taken six 3-pointers, missing all. The Zags led for the final 14:50 of the half but flubbed a chance to put Carolina under real duress.

Nigel Williams-Goss hit from the corner over Theo Pinson to put Gonzaga ahead 16-14. Then Josh Perkins seized a loose ball and sank a trey. Then Johnathan Williams wheeled for a hook against Isaiah Hicks. The Zags led by seven and had two chances to push their advantage to double figures. But Williams missed an open 3-pointer and Jordan Mathews did the same.

Of the half’s final nine rebounds, Carolina took seven. Their final six points came after offensive rebounds. Not for nothing had the Heels led the nation in second-chance points. Not for nothing was their ticket to Monday night punched on the strength of those two offensive rebounds off missed free throws against Oregon.

Gonzaga still out-rebounded Carolina 24-23 for the half, but the Zags’ big men were doing little. All five of their turnovers were by center Przemak Karnowski or backup Zach Collins. Karnowski – he of the famous beard – was the worst player on the floor over Half No. 1. He took four shots, missing them all. He had three turnovers, two fouls. The mammoth man who’d grown accustomed to muscling opponents was himself getting muscled by Meeks.

The second half began with Gonzaga falling to pieces. Perkins turned the ball over the Zags’ first two possessions. Thirty-five seconds in, the Heels were back in front. Then it got worse for the underdogs. Jackson blocked a Williams-Goss shot. Williams-Goss cast an air ball. Carolina took two more offensive rebounds before Meeks scored. Karnowski missed from underneath. Williams-Goss short-armed a layup. Berry nailed a fallaway. By the time Gonzaga coach Mark Few got around to calling timeout, his team had been outscored 8-0 and trailed 40-35.

Would the reeling team from the unassuming West Coast Conference simply slink off into the desert night? Not yet. Williams stole a Hicks pass. Collins converted a 3-point play. Mathews hit a corner trey off an inbounds feed. The Zags were back in front, but Collins was called for an offensive foul – his fourth foul. (Replay showed the foul to be an utter illusion.) He took a seat. Fourteen seconds later, Karnowski was whistled for his third. He stayed in the game, which had degenerated to a point not seen in a final since UConn-Butler in 2011. Both teams were shooting the bonus not seven minutes in. Jackson was 0-for-8 on 3-pointers. Williams-Goss was 2-for-13 on anything. Three minutes passed without a basket, and here we remind you: This was the national championship game.

Gonzaga went seven minutes without a hoop and found itself trailing by two points. After a long delay for replay review that yielded Karnowski’s fourth foul, Berry missed two foul shots to keep the game at 52-52. Carolina sub Tony Bradley untied it, naturally, by following his own miss.

With 6:23 left, officials – by now unaccustomed to seeing a clean basket scored – waved off Hicks’ hook. After replay showed it beat the shot clock, the hoop was counted. Williams took an awful-looking 3-pointer from the right corner that somehow banked home, a sign the basketball gods were showing mercy on this audience. Collins fouled out with 5:03 left. Berry and Williams-Goss traded treys. With 3:15 left, Carolina led 62-60. The game had seen exactly as many fouls (41) as field goals.

This motley game needed something nice to happen, and Carolina finally provided it. And nobody was heard to call, “Encore!”