求助
查看原帖
求助
926056
15700899722yi楼主2023/8/3 18:09
#include<bits/stdc++.h>
using namespace std;
const int dy[4]={0,1,0,-1},dx[4]={1,0,-1,0};
int n,m,ans,cx,cy,fx,fy,cz,fz;
char a[12][12];
int main(){
    for(int i=1;i<=10;i++){
    	for(int j=1;j<=10;j++){
    		cin>>a[i][j];
    		if(a[i][j]=='C'){
    			cx=j,cy=i;
			}
			if(a[i][j]=='F'){
    			fx=j,fy=i;
			}
		}
	}
	while(cx!=fx||cy!=fy){
		if(cx+dx[cz%4]<=0||cx+dx[cz%4]>=11||cy+dy[cz%4]<=0||cy+dy[cz%4]>=11||a[cy+dy[cz%4]][cx+dx[cz%4]]=='*'){
			cz++;
		}else{
			cx+=dx[cz%4];
			cy+=dy[cz%4];
		}
		
		if(fx+dx[fz%4]<=0||fx+dx[fz%4]>=11||fy+dy[fz%4]<=0||fy+dy[fz%4]>=11||a[fy+dy[fz%4]][fx+dx[cz%4]]=='*'){
			fz++;
		}else{
			fx+=dx[fz%4];
			fy+=dy[fz%4];
		}
		if(ans>=200){
			cout<<0;
			return 0;
		}
		cout<<cy<<' '<<cx<<' '<<fy<<' '<<fx<<endl;
		ans++;
	}
	cout<<ans;
    return 0;
}
2023/8/3 18:09
加载中...