P.A. Parenteau scored the deciding shootout goal to lead the Montreal Canadiens to a 2-1 win over the Calgary Flames on Tuesday night

Tom Gilbert scored in the second period for the Canadiens, who had lost their previous seven games in Calgary. Montreal also bounced back from a 3-0 loss at Edmonton on Monday night.

Mark Giordano scored the lone goal for the Flames, who close out a five-game homestand Friday against Nashville.

Carey Price made 37 saves and three more in the shootout to power Montreal to the victory.

Calgary's Jonas Hiller finished with 18 stops. Hiller had won his last three games.

Hiller stopped Alex Galchenyuk and David Desharnais in the shootout before Parenteau snapped a shot past him to give the Canadiens the win.

Price made big save early in the first period when Curtis Glencross tipped Kris Russell's point shot during a Calgary power play.

The Flames then had a two-man advantage for 46 seconds with Montreal defensemen P.K. Subban and Alexei Emelin in the penalty box. Dennis Wideman had the best chance to score, but he drove a shot wide of the net that bounced off the boards and out of the zone to end the threat.

The Canadiens had a chance for a short-handed goal with Emelin still in the penalty box, but Lars Eller redirected a pass from Travis Moen high and wide of the Calgary net.

During a man advantage for Montreal, Hiller stood his ground to stop a hard shot from the slot off the stick of Brendan Gallagher. Hiller then made a glove save to stop a breakaway attempt by Montreal forward Rene Bourque.

At the other end of the ice, Price stopped back-to-back shots by Sean Monahan and Glencross during Calgary's third power play of the first period.

The Flames appeared to open the scoring early in the second when Mikael Backlund tapped the puck into a wide-open goal, but it was waived off due the net being off its moorings.

The Flames continued to press and were rewarded when Giordano snapped a shot from the high slot into the top corner over Price's outstretched glove at 2:08 of the second. Giordano was set up by rookie forward Johnny Gaudreau, who worked hard to keep the puck in the Montreal zone.

The Canadiens tied it at 12:48 of the second when Gilbert intercepted a clearing attempt by Matt Stajan and quickly snapped a shot from a bad angle into the top corner behind Hiller, who was screened on the play.

Montreal had a great chance to take the lead early in the third, but Max Pacioretty lost the puck in front of the Calgary net when he was sprung on a breakaway by Gallagher, who followed up on the play and took a shot that Hiller stopped with his left pad.

At 12:32 of the third, Stajan had to be helped off the ice after a knee-on-knee collision with Montreal defenseman Jarred Tinordi, who received a minor penalty.

David Jones, who missed the past eight games with a lower-body injury, had a great chance to score for the Flames during the man advantage, but was denied by Price, who made a pad save before covering up the puck.

In overtime, Price stopped Gaudreau at one end of the ice before Hiller returned the favor by standing his ground to deny a scoring attempt by Gallagher.

Price then made a nice glove grab on a shot from the slot by Giordano before Hiller stopped a point drive by Subban to send the game to the shootout.

NOTES: Brandon Prust played his 100th career game with the Canadiens. A third-round draft pick of the Flames in 2004, Prust suited up for 78 games with Calgary between 2006 and 2010. .. Calgary forward Joe Colborne left in the second period with an upper-body injury and didn't return. ... Linesman Darren Gibbs was honored before puck drop for working in his 1,000th NHL game.