CHARLOTTE, N.C. — Hornets associate head coach Stephen Silas expressed concern about stopping the Trail Blazers' talented backcourt. Turns out, his concerns were warranted.

CJ McCollum had 25 points, Damian Lillard flirted with a triple-double and Portland held on to beat Charlotte 93-91 on Saturday night. Lillard had 18 points, 11 assists and seven rebounds and the Trail Blazers won their third straight on the road.

"Even though it wasn't in a sexy way on the offensive end, in a sense, I think defensively we stuck in there and did the right things to make some plays," Evan Turner said.

Nic Batum had a season-high 23 points for the Hornets. They have dropped 10 of their last 12 games, including five straight at home.

Kemba Walker had three chances to put the Hornets ahead late, but couldn't convert.

He missed a foul line jumper with 18 seconds left with the Hornets trailing by one. McCollum made 1 of 2 free throws to push the lead to 93-31. On the ensuing possession Walker drove the lane, but couldn't get a layup to drop — or draw the foul call — with Jusuf Nurkic defending. A scramble for the loose ball ensued, but Jeremy Lamb air-balled a 3-pointer from the left wing.

The Hornets still had a chance after Al-Farouq Aminu missed two free throws with 3 seconds left but Walker's heave from just inside the half court line hit only the backboard.

It was that kind of night for Charlotte.

"Kemba obviously had a rough night, but he gutted it out," Silas said of Walker, who played with his sprained left wrist taped after aggravating it in a loss on Friday night to the Miami Heat. "The plays that he had down the stretch, I wouldn't want the ball in anybody else's hands."

The Trail Blazers started an 18-4 run with 3:35 left in the third quarter as McCollum sparked the outburst with 3-pointers on back-to-back possessions. Charlotte tied it with 4 minutes remaining behind Walker and Lamb, but could never take the lead.

"The last few minutes (of the game) were pretty exciting," Blazers coach Terry Stotts said. "I was proud that we were able to hold on. It's the NBA, nothing is easy. You have to grind it out, it would be nice to have a 20-point win, but those are hard to come by."

Batum called that frustrating, particularly with it being the second night in a row the Hornets had battled back to make it a close game in the fourth quarter only to lose.

"We put ourselves in a bad situation where we were down like 15 or 16 again," Batum said. "We can't as a team let that happen every time."

TIP INS

Trail Blazers: Held the Hornets to 32 per cent shooting in the first half to build a 49-37 lead at the break.

Hornets: Johnny O'Bryant did not play in the second half due to a personal reason, according to the team. ... Michael Carter-Williams missed a wide open layup at the end of the third quarter with absolutely nobody around him.

NO ROOKIES: Silas didn't play either of the team's rookies, Malik Monk or Dwayne Bacon, saying that he is shortening his rotation.

"Because we need some wins," Silas said of the Hornets, who dropped to 10-19. "And it's not time to develop or gift minutes right now. It's about winning and my rotations going to be short for a little while just until we get this thing back on track."

ROAD WARRIORS: The Blazers are 3-1 on their current road trip and look to finish strong against the Timberwolves on Monday night.

"It's always hard to get a win on the road and we did that," Aminu said. "We're going to keep on battling and try to finish out the road trip for sure."

HOWARD IN CHECK:

The Blazers held Dwight Howard to nine points on 3 of 10 shooting.

"I thought Jusuf Nurkic and Ed Davis did a very good job of making it difficult for him to catch the ball and making him shoot over the top by not putting him in a position where he could just dunk the ball," Stotts said. "Like any great player, you have to just make him work."

UP NEXT

Trail Blazers: At Minnesota on Monday night.

Hornets: Host New York on Monday.

___

For more NBA coverage: https://apnews.com/tag/NBAbasketball