Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct BoardEscapeDiv2
- {
- vector <string> m;
- int check(pii n,int r,int c)
- {
- int o=0,e=0,cc=0;
- FOR(i,0,3)
- {
- int nx=n.x+dx[i];
- int ny=n.y+dy[i];
- if(nx>=0&&nx<r&&ny>=0&&ny<c)
- {
- if(m[nx][ny]=='E')e++;
- if(m[nx][ny]=='#')o++;
- cc++;
- }
- }
- if(o==cc)return 100;
- if(e>0)return e;
- return -1;
- }
- string findWinner(vector <string> s, int k)
- {
- string ret;
- m=s;
- pii T;
- int r=(int)s.size();
- int c=(int)s[0].size();
- FOR(i,0,r-1)
- FOR(j,0,c-1)
- if(s[i][j]=='T')
- T=mp(i,j);
- if(check(T,r,c)==100)ret="Bob";
- else if(check(T,r,c)>0)ret="Alice";
- else if(k==1)ret="Alice";
- else
- {
- bool aa=false;
- FOR(i,0,3)
- {
- int nx=T.x+dx[i];
- int ny=T.y+dy[i];
- if(nx>=0&&nx<r&&ny>=0&&ny<c&&s[nx][ny]=='.')
- if(check(mp(nx,ny),r,c)==-1)
- aa=true;
- }
- if(k%2==0)ret="Bob";
- else ret="Alice";
- if(!aa)ret="Bob";
- }
- return ret;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement