有什么优化的办法吗
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[600010][600010],l;
int n,m,c;
cin>>n,m;
for(int i=1;i<=2*n+1;i++)
{
for(int j=1;j<=2*m+1;j++)
{
cin>>a[i][j];
}
}
l=a[n][m];
cin>>c;
for(int i=1;i<=c;i++)
{
char s;
cin>>s;
if(s=='L')
{
l=a[--n][m];
if(l=='A')
{
l=a[++n][m];
}
else if(l=='B')
{
l=a[++n][m];
l=a[++n][m];
}
else if(l=='C')
{
l=a[--n][m];
}
}
if(s=='R')
{
l=a[++n][m];
if(l=='A')
{
l=a[--n][m];
}
else if(l=='B')
{
l=a[--n][m];
l=a[--n][m];
}
else if(l=='C')
{
l=a[++n][m];
}
}
if(s=='U')
{
l=a[n][--m];
if(l=='A')
{
l=a[n][++m];
}
else if(l=='B')
{
l=a[n][++m];
l=a[n][++m];
}
else if(l=='C')
{
l=a[n][--m];
}
}
if(s=='D')
{
l=a[n][++m];
if(l=='A')
{
l=a[n][--m];
}
else if(l=='B')
{
l=a[n][--m];
l=a[n][--m];
}
else if(l=='C')
{
l=a[n][++m];
}
}
}
return 0;
}
在线等,挺急!