#include<iostream>#include<map>#include<vector>#include<cmath>usingnamespace std;intmain(){
map<int,int> rap;int N, M, K;
cin >> N >> M >> K;// M行 N列
vector<vector<int>>v(M +10, vector<int>(N +10));for(int i =1; i <= M; i++){for(int j =1; j <= N; j++){scanf("%d",&v[i][j]);
rap[v[i][j]]++;}}int f =0;int ans =0;int x, y;for(int i =1; i <= M; i++){for(int j =1; j <= N; j++){// 保证他是独特的if(rap[v[i][j]]==1){int t =0;int sum =0;// 下面是循环旁边的8个位置// 因为有可能i-1 <= 0 或者 j+1 > N 等越界的情况,所以用max和min限制一下for(int p =max(1, i -1); p <=min(M, i +1); p++){for(int k =max(j -1,0); k <=min(N, j +1); k++){// 这是他自己if(v[i][j]== v[p][k])continue;// 不行就做个标记if(abs(v[i][j]- v[p][k])<= K){
t =1;break;}}}// 当前的点可以if(!t){
ans = v[i][j];
x = j, y = i;// 如果已经有过点了,重复!if(f){
cout <<"Not Unique";return0;}
f =1;}}}}if(!f)
cout <<"Not Exist";else{printf("(%d, %d): %d", x, y, ans);}return0;}