Table for P2 's journey from start to meeting cell
for ( int i = N ; i >= 1 ; i -- ) for ( int j = 1 ; j <= M ; j ++ ) P2S [ i , j ] = Math . Max ( P2S [ i + 1 , j ] , P2S [ i , j - 1 ] ) + A [ i - 1 , j - 1 ] ;