Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
123024 mairuisheng 猫和老鼠 C++ 编译错误 0 0 MS 0 KB 1332 2024-01-22 17:07:40

Tests(0/0):


#include<bits/stdc++.h> using namespace std; struct Node { int x,y; char pos; }; char array[10][11]; void MoveNext(struct Node* who) { switch(who->pos) { case 'N': if(who->x==0||array[who->x-1][who->y]=='*') { who->pos='E'; } else { who->x--; } break; case 'S': if(who->x==9||array[who->x+1][who->y]=='*') { who->pos='W'; } else { who->x++; } break; case 'E': if(who->y==9||array[who->x][who->y+1]=='*') { who->pos='S'; } else { who->y++; } break; case 'W': if(who->y==0||array[who->x][who->y-1]=='*') { who->pos='N'; } else { who->y--; } break; } } int main() { int N,i,j,k,count; struct Node Mouse, Cat; gets(array[0]); for(j=0;j<10;j++) { gets(array[j]); } for(i=0;i<10;i++) for(j=0;j<10;j++) { if(array[i][j]=='C') { Cat.x=i; Cat.y=j; Cat.pos='N'; } else if(array[i][j]=='M') { Mouse.x=i; Mouse.y=j; Mouse.pos='N'; } } count=0; while(count<100&&(Mouse.x!=Cat.x||Mouse.y!=Cat.y)) { MoveNext(&Mouse); MoveNext(&Cat); count++; } if(Mouse.x==Cat.x&&Mouse.y==Cat.y) { cout<<count<<endl; } else { cout<<"-1"<<endl; } return 0; }


测评信息: