알고리즘/leetcode
1706. Where Will the Ball Fall
유이얼
2022. 7. 31. 01:10
class Solution {
public:
vector<int> findBall(vector<vector<int>>& grid) {
int n = grid.size();
int m = grid[0].size();
vector<int> ans(m);
for (int i = 0; i < m; ++i)
ans[i] = i;
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m; ++j) {
int cur = ans[j];
if (cur == -1) continue;
int next = cur + grid[i][cur];
if (next < 0 || m == next || grid[i][next] != grid[i][cur]) {
ans[j] = -1;
continue;
}
ans[j] = next;
}
}
return ans;
}
};