classSolution{public:
vector<vector<int>> f;int n, m;intdfs(int x,int y,int p){if(x == n -1&&!p){return y;}if(!p)returndfs(x +1, y,1);else{if(f[x][y]==1){if(y +1>= m)return-1;if(f[x][y +1]==-1)return-1;returndfs(x, y +1,0);}else{if(y -1<0)return-1;if(f[x][y -1]==1)return-1;returndfs(x, y -1,0);}}}
vector<int>findBall(vector<vector<int>>& g){
n = g.size(), m = g[0].size();
f = g;
vector<int> res;for(int i =0; i < m; i ++)
res.push_back(dfs(0, i,1));return res;}};