#include int n; int a[1005][1005]; int zd[1005][1005]; int zx[1005][1005]; int main() { scanf("%d", &n); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { scanf("%d", &a[i][j]); } } for (int i = 0; i < n; i++) { int minj = -1, minn = 1e9; for (int j = 0; j < n; j++) { if (a[i][j] < minn) { minj = j; minn = a[i][j]; } } zd[i][minj] = 1; } for (int i = 0; i < n; i++) { int maxj = -1, maxn = -1; for (int j = 0; j < n; j++) { if (a[j][i] > maxn) { maxj = j; maxn = a[j][i]; } } zx[maxj][i] = 1; } int flag = 0; for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { if (zd[i][j] && zx[i][j]) { flag = 1; printf("%d %d %d\n", i + 1, j + 1, a[i][j]); } } } if (!flag) printf("None"); return 0; }