As I said, a task better suited for AI, but this is how I would do this in PS. There may be a better way to go about this, but I don't use PS for this kind of stuff, so I don't know about it, if there is.
The initial shape:
I made a duplicate of the shape and decreased the Fill to 0%. This is the shape that I then applied my stroke to. I then selected every other dash with the Marquee Selection Tool.
With the selection still made, I created a Layer Mask, by clicking the icon at the bottom of the layers palette that looks like a Japanese flag. I duplicated the layer with the mask on it and then inverted the mask by clicking on the mask in the layers palette and hitting CTRL+I or CMD+I. This gives me two masked stroke layers, each showing the inverse regions of the other.
You can then recolor the strokes of these two layers the same as you would for the shape in the first place.
There may be better ways to accomplish this in PS, but like I said, I personally use AI for this kind of thing. PS is limited with its shape and stroke options.