题目

模拟题也各种wa,我最近真的堕落了,,,,,智商越来越为负数了!!!!!!!!

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
char mp[][];
int d=-;//0shang,1xia,2zuo,3you
int x,y;//weizhi
int weizhi(int i,int j)
{
if(mp[i][j]=='<'){x=i,y=j,d=;return ;}
if(mp[i][j]=='>'){x=i,y=j,d=;return ;}
if(mp[i][j]=='^'){x=i,y=j,d=;return ;}
if(mp[i][j]=='v'){x=i,y=j,d=;return ;}
return ;
}
void fangxiang()
{
if(d==)mp[x][y]='^';
else if(d==)mp[x][y]='v';
else if(d==)mp[x][y]='<';
else if(d==)mp[x][y]='>';
}
void mov(int num)
{
while(num--)
{
char fro=mp[x][y];
if(d==)
{
for(int i=x-;i>=;i--){
if(mp[i][y]=='.'){mp[i][y]=fro;break;}
else {
char tmp=mp[i][y];
mp[i][y]=fro;
fro=tmp;
}
}
if(x->=)mp[x][y]='.',x--;
}
else if(d==){ for(int i=x+;i<;i++){
if(mp[i][y]=='.'){mp[i][y]=fro;break;}
else {
char tmp=mp[i][y];
mp[i][y]=fro;
fro=tmp;
}
}
if(x+<)mp[x][y]='.',x++;
}
else if(d==){ for(int i=y-;i>=;i--){
if(mp[x][i]=='.'){mp[x][i]=fro;break;}
else {
char tmp=mp[x][i];
mp[x][i]=fro;
fro=tmp;
}
}
if(y->=)mp[x][y]='.',y--;
}
if(d==){ for(int i=y+;i<;i++){
if(mp[x][i]=='.'){mp[x][i]=fro;break;}
else {
char tmp=mp[x][i];
mp[x][i]=fro;
fro=tmp;
}
}
if(y+<) mp[x][y]='.',y++;
}
}
}
void turnn(char cc)
{
if(cc=='l')
{
if(d==)d=;
else if(d==)d=;
else if(d==)d=;
else if(d==)d=;
}
else if(cc=='r')
{
if(d==)d=;
else if(d==)d=;
else if(d==)d=;
else if(d==)d=; }
else if(cc=='b')
{
if(d==)d=;
else if(d==)d=;
else if(d==)d=;
else if(d==)d=;
}
}
int main()
{
while(scanf("%s",mp[])!=EOF)
{ if(strcmp(mp[],"--")==)break;
for(int i=;i<;i++)
{
scanf("%s",mp[i]);
}
int fl=;
for(int i=;i<;i++){
for(int j=;j<;j++){
if(weizhi(i,j)){fl=;break;}
}
if(fl)break;
} while()
{
char p[];
int movee;
scanf("%s",p);
if(strcmp(p,"#")==)break;
if(strcmp(p,"move")==){
scanf("%d",&movee);
mov(movee);
}
else {
scanf("%s",p);
turnn(p[]);
fangxiang();
}
}
for(int i=;i<;i++)
printf("%s\n",mp[i]); printf("\n");
}
return ;
}
05-11 21:43