Solving Matrix Index Problem

4 visualizaciones (últimos 30 días)
Zaki
Zaki el 30 de Sept. de 2013
Editada: Stephen23 el 19 de Jul. de 2023
is anyone here know how to solve matrix index problem in matlab?? For example the following problem :
You have a matrix for which each row is a person and the column represent the number of quarters, nickels, dimes, and pennies. What is the raw index of the person with the most money?
Note for those unfamiliar with American coins ; quarter = $ 0.25, dime = $ 0.10, nickel = $ 0.05, penny = $0.01
Example :
Input a = [1 0 0 0 ; 0 1 0 0] output b = 1
since the first person will have $ 0.25 and the second person will have only $0.05
Thanks you, i need the answer..

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 30 de Sept. de 2013
c=[0.25 0.1 0.05 0.01]
a = [1 0 0 0 ; 0 1 0 0]
[max_money,b]=max(sum(bsxfun(@times,c,a),2))
  1 comentario
Zaki
Zaki el 30 de Sept. de 2013
Movida: Stephen23 el 19 de Jul. de 2023
Thanks for your help

Iniciar sesión para comentar.

Más respuestas (4)

Rahul Sharma
Rahul Sharma el 8 de Feb. de 2020
clear all
clc
a=randi(4,3,4)
k=[0.25 0.10 0.05 0.01];
for j=1:4
for i=1:3
a(i,j)=k(j)*a(i,j)
end
end
b=max(sum(a'))
disp(b)

Rahul Sharma
Rahul Sharma el 8 de Feb. de 2020
a=randi(4,3,4)
a(:,1)=0.25*a(:,1);
a(:,2)=0.10*a(:,2);
a(:,3)=0.05*a(:,3);
a(:,4)=0.01*a(:,4);
disp(a)
b = max(sum(a'));
disp(b)

Mohana Segaran
Mohana Segaran el 19 de Jul. de 2023
a = [1 0 0 0; 0 1 0 0; 1 1 1 0];
b = [0.25 0.1 0.05 0.01; 0.25 0.1 0.05 0.01; 0.25 0.1 0.05 0.01];
x = dot(a,b,2);
[y z]= max(x);
z

Stephen23
Stephen23 el 19 de Jul. de 2023
Editada: Stephen23 el 19 de Jul. de 2023
The simple and efficient approach is to use MTIMES:
M = [1,0,0,0;0,1,0,0;0,2,1,1] % any number of rows
M = 3×4
1 0 0 0 0 1 0 0 0 2 1 1
V = [0.25;0.1;0.05;0.01]; % one column
[~,X] = max(M*V)
X = 3

Categorías

Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by