Hay más de una manera de resolver ese problema.Te puse la mas comprensible a priori, el hecho de declarar m = n[0]; es aconsejable.No tiene porque dar un resultado impreciso, aunque se puede omitir.Por cierto la asignación a m no era m = n , sino al primer numero osea ' 0 'quise decir m = n[0];.
También podrías incluir las sentencias if dentro del primer for después de la entrada de datos.
Bueno igualmente me alegro de que encontraras la solución.