Ver Mensaje Individual
  #5 (permalink)  
Antiguo 26/03/2012, 07:19
sam90
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 7 meses
Puntos: 228
Respuesta: bisqueda de una fila y columna en una matriz

Suponiendo que todos los elementos son enteros positivos. Sino se le puede hacer unos retoques podrias sumar todos los elementos de las filas o columnas y ver cual es esa suma.

Si una columna tiene todo cero, la suma de todos los elementos de esta columna tiene que dar cero. Si son todos uno la suma daria N.

La idea seria la siguiente:
Supongamos que tenemos una matriz NxN. entonces definimos una matriz N+1 X N+1
Código C:
Ver original
  1. int matriz[N+1][N+1];
  2.  
  3. for(i=0;i< N ; i++)
  4.     for(j=0;j< N ; j++) {
  5.         matriz[i][N] += matriz[i][j];
  6.         matriz[N][j] += matriz[i][j];
  7.      }

Luegos comparas los elementos como te dije. Esto es lo mas rapido que se me ocurre por el momento. Solo se recorre una vez la matriz y podes determinar todas las columnas o filas que decis.

Saludos,
Espero que se entienda.