#include using namespace std; typedef pair P; typedef tuple T; int dx[4] = {1, 0, -1, 0}; int dy[4] = {0, 1, 0, -1}; int H, W; int A[210][210]; void bfs(int sx, int sy, int c1, int c2) { if (c1==c2) return; queue

q; q.push(P(sx, sy)); A[sx][sy] = c2; while (q.size()) { P p = q.front(); q.pop(); int cx=p.first, cy=p.second; for (int i=0; i<4; i++) { int nx=cx+dx[i], ny=cy+dy[i]; if (!(0<=nx && nx> H >> W; for (int i=0; i> A[i][j]; } } int Q; cin >> Q; vector RCX; for (int i=0; i> Ri >> Ci >> Xi; RCX.push_back(make_tuple(Ri, Ci, Xi)); } for (int i=0; i(RCX[i]), Ci=get<1>(RCX[i]), Xi=get<2>(RCX[i]); bfs(Ri-1, Ci-1, A[Ri-1][Ci-1], Xi); if (check()) { for (int i=0; i(RCX[Q-1]) << " "; } cout << endl; } exit(0); } } for (int i=0; i