LeetCode Weekly Contest 181
問題文
省略
省略
C++に変換後のコードはこちら
#define main dummy_main
{}
#undef main
int con[6][4] = { // U, L, D, R
0,1,0,1,
1,0,1,0,
0,1,1,0,
0,0,1,1,
1,1,0,0,
1,0,0,1
};
class Solution {
public:
bool hasValidPath(vector<vector<int>>& A) {
dummy_main();
int X = A.size(), Y = A[0].size();
unionFind uf;
uf.walloc(X*Y, 1);
rep(i,X) rep(j,Y) A[i][j]--;
rep(i,X) rep(j,Y-1) if(con[A[i][j]][3] && con[A[i][j+1]][1]) uf(i*Y+j, i*Y+j+1);
rep(i,X-1) rep(j,Y) if(con[A[i][j]][2] && con[A[i+1][j]][0]) uf(i*Y+j, (i+1)*Y+j);
return uf(0) == uf(X*Y-1);
}
};
Current time: 2024年03月29日06時46分24秒
Last modified: 2020年03月30日02時54分20秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る
Logged in as: unknown user (not login)