/* * File: main.cpp * Author: cteam035 * * Created on October 22, 2016, 10:27 AM */ #include #include #include #include #include #include using namespace std; int chars [255]; char pole [26][26]; int main(int argc, char** argv) { int N; char c; while (scanf("%d",&N) != EOF) { vector sum; vector sumVert; for (int i = 0; i < 26; i++) for (int j = 0; j < 26; j++) pole[i][j]=' '; for (int i = 0; i < N; i++) { int soucet = 0; for (int j = 0; j < N; j++) { cin >> pole[i][j]; } } for (int i = 0; i < N; i++) { int soucet = 0; for (int j = 0; j < N; j++) { soucet += (int)pole[i][j]; } sum.push_back(soucet); } for (int i = 0; i < N; i++) { int soucet = 0; for (int j = 0; j < N; j++) { soucet += (int)pole[j][i]; } sumVert.push_back(soucet); } vector sum2; for (int i = 0; i < sum.size(); i++) sum2.push_back(sum[i]); vector sumVert2; for (int i = 0; i < sumVert.size(); i++) sumVert2.push_back(sumVert[i]); sort(sum.begin(),sum.end()); int found; if (sum[0] != sum[1] && sum[0] != sum[2]) { found = sum[0]; } else { found = sum[sum.size()-1]; } sort(sumVert.begin(),sumVert.end()); int found2; if (sumVert[0] != sumVert[1] && sumVert[0] != sumVert[2]) { found2 = sumVert[0]; } else { found2 = sumVert[sumVert.size()-1]; } //cout << found << " " << found2 << endl; int indexX,indexY; for (int i = 0; i < N; i ++) { if (found == sum2[i]) { indexX = i+1; break; } } for (int i = 0; i < N; i ++) { if (found2 == sumVert2[i]) { indexY=i+1; break; } } int bezPismenka = found -= pole[indexX-1][indexY-1]; //cout << bezPismenka << endl; char ch = sum[1]-bezPismenka; //cout << "suma radku " << sum[1] << " " << (int)ch << endl; cout << indexX << " " << indexY << " " << ch << endl; } return 0; }