20pts
查看原帖
20pts
1126733
lxc129楼主2024/10/9 20:55
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,m,nx,ny,cnt1,cnt2,cnt3,cnt4,l1,r1,u1,d1,c1,c2;
char g[31][31],c;
ll dfs(ll x,ll y,ll ro1,ll ro2,char ch){
	if (x<1 || x>n || y<1 || y>m || g[x][y]!=ch) return 0;
	return dfs(x+ro1,y+ro2,ro1,ro2,ch)+1;
}
int main(){
	cin>>n>>m;
	for (ll i=1;i<=n;i++) for (ll j=1;j<=m;j++) cin>>g[i][j];
	for (ll i=1;i<=n;i++)
		for (ll j=1;j<=m;j++)
			if (g[i][j]!='~'){
				nx=i,ny=j,c=g[i][j];
				if (c=='*') c2++;
				else c1++;
				cnt1=dfs(nx,ny,-1,-1,c);
				cnt2=dfs(nx,ny,1,1,c);
				cnt3=dfs(nx,ny,1,-1,c);
				cnt4=dfs(nx,ny,-1,1,c);
				l1=dfs(nx,ny,0,-1,c);
				r1=dfs(nx,ny,0,1,c);
				d1=dfs(nx,ny,1,0,c);
				u1=dfs(nx,ny,-1,0,c);
				if (cnt1+cnt2==4 || cnt3+cnt4==4 || l1+r1==4 || d1+u1==4){
					if (c=='*') cout<<"Pleasing!";
					else cout<<"zylwins!";
					return 0;
				}
			}
	if (c1>c2) cout<<"W";
	else cout<<"Z";
}
2024/10/9 20:55
加载中...