#include #include int getOutlier(int *array, int dimensions, int *valA, int *valB){ int x=0,y=0,posx,posy; for(int i = 0; i < dimensions; i++){ if (x == 0){ x = array[i]; *valA = x; posx = i; }else if (x == array[i] && y == 0){ }else if (x != array[i] && y == 0){ y = array[i]; *valB = y; posy = i; }else if (x == array[i]){ int temp = *valA; *valA = *valB; *valB = temp; return posy; }else{ return posx; } } } int main() { int dimensions; while(scanf("%d", &dimensions) == 1){ int row[dimensions]; int column[dimensions]; char tribune[dimensions][dimensions]; std::memset(row,0,sizeof row); std::memset(column,0,sizeof column); std::memset(tribune,0,sizeof tribune); for(int i = 0; i < dimensions; i++){ getchar(); for(int j = 0; j < dimensions; j++){ char c = getchar(); tribune[i][j] = c; row[i] += c; column[j] += c; } } int valA,valB; int rowI = getOutlier(row, dimensions, &valA, &valB); int colI = getOutlier(column, dimensions, &valA, &valB); printf("%d %d %c\n", 1+rowI, 1+colI, tribune[rowI][colI] - valA + valB); } return 0; }