Roy had 19 points in his return from a hamstring injury to help the Trail Blazers beat the short-handed Warriors 113-100 on Saturday night.
Roy, Portland's leading scorer, missed four games because of his sore right hamstring. The team went 2-2 in his absence.
He played only about 6 minutes in each of the first three quarters against Golden State. But then, unexpectedly, he started to feel stronger. His second wind kicked in, and he played a full 12 minutes in the final quarter.
"I actually surprised myself and played a little bit better than I thought I would, and maybe a little bit longer," Roy said.
Roy's return clearly inspired Portland, which trailed by 12 points in the first half, then led by 18 in the second. LaMarcus Aldridge led the Blazers with 26 points.
Corey Maggette had 25 points for the Warriors, who lost their fifth straight game. Golden State cut it to 99-94 on Maggette's 3-pointer and Kelenna Azubuike's jumper with 4:26 left, but couldn't get any closer.
Warriors coach Don Nelson said his team struggled with rebounding, turnovers and second-chance points.
"We're just not good at it," Nelson said. "It's not that we don't try, we're just not good at it."
"I was really pleased with Brandon's performance after the layoff. I said earlier that we would only play him 20 to 25 minutes, but as the game wore on he said he felt better and wanted to play more," Blazers coach Nate McMillan said. "We gave him the ball down the stretch and he helped up close the game out."
Portland was coming off an 84-83 victory over Detroit on Wednesday night, sealed by Outlaw's fadeaway jumper with 8.9 seconds remaining.
The Warriors lost 114-106 at home to the Lakers on Wednesday, and it was costly. Starting forward Brendan Wright left the game with a dislocated right shoulder and did not play against the Blazers.
The Warriors also were without Stephen Jackson, the team's second-leading scorer, because of a strained right hamstring. He has missed two games.
But rookie guard Anthony Morrow was back after missing the team's game against the Lakers for personal reasons.
Golden State, 4-20 on the road this season, has lost seven straight away from home.
The Warriors took a 34-22 lead in the first half on Azubuike's 3-pointer and two free throws from Maggette.
The Blazers came back to tie it at 41 on Roy's dunk. The teams wrestled over the lead until Outlaw scored the half's final seven points to give Portland a 55-49 lead at the break.
The Blazers led from there. Roy and Outlaw brought the biggest cheers of the night with back-to-back dunks that made it 90-76.
The Blazers caused a stir off the court in recent days because of an e-mail sent to executives across the league that suggested Portland could take legal action against any team to sign former forward Darius Miles.
Miles was waived by the Blazers at the end of last season, after an independent doctor said a knee injury was career-ending. However, Miles has tried to make a comeback and has played in eight NBA games. If he plays in 10, some $18 million that the Blazers owe him would count toward the team's salary cap.
Blazers president Larry Miller said the team sent the e-mail warning because of talk that other teams were considering signing Miles with the intention of hurting Portland financially.
On Saturday, the Grizzlies signed Miles to a 10-day contract. Miles had been released by Memphis earlier this week after playing in two games with the team.
Roy said the Miles matter is no distraction.
"I don't know if anybody even knows what's going on," he said. "Out focus is on the team right now."
- The Blazers are 14-4 at the Rose Garden.
- Golden State beat the Blazers 111-106 in the first meeting between the two teams this season.
- Portland's 39 points in the second quarter were a season high for the period.