Let's start by writing down everything we know. Let's assume the instant the truck passes the car is time t = 0 s and take this to be the origin for the position of the cop and truck. This will make things easier.
xcop(0) = 0 m
xtruck(0) = 0 m
vcop(0) = 2 m/s
vtruck(0) = 42 m/s
vtruck(t) = 42 m/s
atruck = 0 m/s2
acop = 4 m/s2
First, we want to know a what time, t, the cop car reaches the truck. In other words, we know that at some time, t, xcop(t) = xtruck(t). Let's start with the kinematic equation for position.
xtruck(t) = xtruck(0) + vtruck(0)t + (1/2)atruckt2
= vtruck(0)t
xcop(t) = xcop(0) + vcop(0)t + (1/2)acopt2
= vcop(0)t + (1/2)acopt2
Now set these two equations equal to each other and solve for t.
vtruck(0)t = vcop(0)t + (1/2)acopt2
[vtruck(0) - vcop(0)]t = (1/2)acopt2
t = 2[vtruck(0) - vcop(0)] / acop
= 2[42 m/s - 2 m/s] / 4 m/s2
= 2[40 m/s] / 4 m/s2
= 80 m/s / 4 m/s2
= 20 s.
So it takes 20 s for the cop to catch up to the truck. Plug this time back into the kinematic equation for the cop's position and we get:
xcop(t) = vcop(0)t + (1/2)acopt2
xcop(20 s) = (2 m/s)(20 s) + (1/2)(4 m/s2)(20 s)2
= (40 m) + (800 m)
= 840 m.
The cop has traveled 840 m to catch up to the truck. Now we can use the kinematic equation for the cops speed:
vcop(t) = vcop(0) + acopt
vcop(20 s) = (2 m/s) + (4 m/s2)(20 s)
= (2 m/s) + (80 m/s)
= 82 m/s.
And there you have it. The cop is going 82 m/s when he reaches the truck.