There are 5 saddle points in the sample. One is at A[8][8] and has the value 0.50, which is the maximum

value of its row, but the minimum value of its column. The other 4 are at the corners of the matrix (A[0][0], A[U][16], A [16][0] and A[16][16]) each of which is the minimum of its row, and the maximum of

its column. Your algorithm will locate and output all saddle points, i.e., all entries A[x][y] for which the entry is the

max in its row and min in its column, or vice versa. There might be 1 saddle point, several saddle points or perhaps no saddle points. Write your algorithm using pseudocode and document it with assertions and comments. You may

assume that max and min are functions that work in the expected fashion, i.e., your algorithm can freely

make use of max and min. That doesn't mean that max and min are "free" in terms of cost! Each ofthem

will still cost time in proportion to the number of elements it needs to scan. Determine the running time of your algorithm using O-notation, as a function of n. Remember that time

is a precious resource: the faster your algorithm, the better your grade