真的只是入门难度么
查看原帖
真的只是入门难度么
155543
Starlight_StationOI楼主2021/1/24 20:27

打完代码才发现居然这么长,看着怎么可能是入门难度的题。 然后交上去评测,只有前两组捆绑点全对,后面都有几个WA。

#include<bits/stdc++.h>
using namespace std;
char a[103][103];
int watx=-1,waty=-1;
void checkwater(int x,int y)
{
	for(int i=0;i<x;i++)
	    for(int j=0;j<y;j++)
	        if(a[i][j]=='o'){
	        	watx=i; waty=j;
	        }
}
int checkG(int x,int y,char g)
{
	int boo=1;
	if(g=='^') for(int i=watx;i>=0;i--) if(a[i][waty]=='x')boo=0;
	if(g=='v') for(int i=watx;i<x;i++) if(a[i][waty]=='x')boo=0;
	if(g=='<') for(int i=waty;i>=0;i--) if(a[watx][i]=='x')boo=0;
	if(g=='>') for(int i=waty;i<y;i++) if(a[watx][i]=='x')boo=0;
	return boo;
}
int main()
{
	int n,m; char g;
	cin>>n>>m; cin>>g;
	for(int i=0;i<n;i++)
	    for(int j=0;j<m;j++)cin>>a[i][j];
	checkwater(n,m);
	if(watx==-1){
		cout<<"OK";
		return 0;
	}
	int checkphone=checkG(n,m,g);
	if(checkphone==1)cout<<"OK";
	    else cout<<"GG";
	return 0;
}

感觉算法没什么错,是我太弱了么 求大佬救救本蒟蒻

2021/1/24 20:27
加载中...