MATLAB: Avoiding cross product for accessing the matrix

efficient matrix handlingmanipulationsub2ind

Let say I have matrix A = magic(10). I want to get few selected values of A. Let say A(5,10), A(6,10), A(5,5). If for row I have vector r = [5 6 5] and c = [10 10 5], Then when I do
A(r,c), instead of three values I get 3×3. it is due to fact that for each value in r is paired with each value in c. How can I avoid this. I want that for the first value of r take first value of c and so on.
Actually I want to calculate the time for function, therefore, I have to take minimum instruction to compute.
Sorry for any inconvenience caused.

Best Answer

pos = sub2ind(size(A), r,c)
A(pos)