RISHI Patel and Colin Ackermann's century partnership led Leicestershire to a shock 31-run Vitality Blast win over Yorkshire at Headingley.

The pair put on 109 as the Foxes fought back from a tricky start to set Yorkshire 189 to win.

Dawid Malan's half-century and another impressive innings from recent England Test call-up Harry Brook gave the Vikings hope, but Leicestershire secured their first win of the competition.

Yorkshire's pursuit of 189 got off to a flyer with 24 runs in the first two overs - all from the bat of Adam Lyth.

But the Vikings lost two wickets in two overs as Lyth fell to Ben Mike for 24 and Tom Kohler-Cadmore to Naveen-ul-Haq for one.

England duo Malan and Joe Root shared a half-century stand to guide Yorkshire to 77-2 at halfway with another 112 needed.

Root fell three balls later to Mike for 17 from 16 balls, caught trying to power the ball over the infield.

Malan eased to a 37-ball fifty in the 13th over but departed one ball after his milestone to Callum Parkinson to leave Yorkshire 96-4.

The in-form Brook struck two crisp boundaries to get himself going but with five overs remaining Yorkshire were up against it, needing 69 to win.

Brook, pushing for a Test debut at Lord's on Thursday, passed 1,000 runs in all formats this season.

But Shadab Khan was out for 16 as the Vikings' hopes faded and they were all-but-extinguished when Jordan Thompson came and went for one.

Yorkshire needed 46 from the last 12 balls and Brook was unable to reach a third Blast fifty in succession, caught on the boundary for 29 off Naveen.

Dom Bess and Matt Revis fell cheaply as Yorkshire could only reach 157-9.

Leicestershire's recovery to their total of 188-7 was an impressive one after losing three wickets inside the powerplay - with Scott Steel, Hamish Rutherford and Arron Lilley all caught in the deep.

Lewis Hill attempted to get the Foxes back on track as he dumped Shadab into the stands, but he fell to Adil Rashid the following over for 22 - the England spinner's 250th career T20 wicket.

From 51-4, Ackermann did shift the momentum Leicestershire's way with 15 off Shadab's next over as his partnership with Patel got under way.

The pair were patient, guiding the visitors to 76-4 at halfway before increasing their rate as the stand wore on.

Their 50 partnership came up in the 13th over, before the 15th and 16th overs went for 15 and 18 respectively, with Patel clearing the ropes three times in 10 balls.

Ackermann's fifty came from 31 balls and Patel's from 30 and their partnership of 109 set a club record fifth-wicket stand in T20s.

Ackermann was removed by Thompson with 15 balls remaining, before Patel departed for a career-best 57 in the final over.

It was Yorkshire's first defeat of the campaign, having begun with a seven-wicket win over Worcestershire, before a thrilling tie with Lancashire on Friday night.