DownsampleFactorMax support strides: issue #2196

That's not right either.
I think the following would work (using `pr`): `pr * st0 + (ds0 - st0)`, or (equivalently) `(pr - 1) * st0 + ds0`.
Without using `pr`, this could be reformulated as `(x.shape[2] + st0 - ds0) // st0 * st0 + ds - st`, or (equivalently) `(x.shape[2] - ds0) // st0 * st0 + ds0`, which is the formula you use below.

For simplicity, I think we should use `pr` (and `pc`), and use only one formula here too.