打完代码才发现居然这么长,看着怎么可能是入门难度的题。
然后交上去评测,只有前两组捆绑点全对,后面都有几个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;
}
感觉算法没什么错,是我太弱了么 求大佬救救本蒟蒻