为啥不对大佬看看
查看原帖
为啥不对大佬看看
871868
songshihao666888楼主2023/4/23 21:52
#include<iostream>
using namespace std;
int main()
{
	char map[10][10]; int res=0;
	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)cin >> map[i][j];
	}
	int pcx, pcy, pjx, pjy;
	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)
		{
			if (map[i][j] == 'C')
			{
				pcx=i, pcy =j;
			}
			if (map[i][j] == 'F')
			{
				pjx = i, pjy = j;
			}
		}
	}
	int p = 1, q = 1;
	while (1)
	{
		int pan1 = 0, pan2 = 0;
		if (pcx == pjx && pcy == pjy)break;
		if (p == 5)p = 1;
		if (q == 5)q = 1;
		if (p == 1 && map[pcx - 1][pcy] != '*' && pan1 == 0&&pcx-1>=0)
		{
			pcx--;
			pan1++;
		}
		if (p == 1 && (map[pcx - 1][pcy] == '*' || pcx - 1<0) && pan1 == 0)
		{
			p++;
			pan1++;
		}
		if (p == 2 && map[pcx][pcy + 1] != '*' && pan1 == 0&&pcy+1<=9)
		{
			pcy++;
			pan1++;
		}
		if (p == 2 && (map[pcx][pcy + 1] == '*'||pcy+1>9) && pan1 == 0)
		{
			p++;
			pan1++;
		}
		if (p == 3 && map[pcx + 1][pcy] != '*' && pan1 == 0&&pcx+1<=9)
		{
			pcx++;
			pan1++;
		}
		if (p == 3 && (map[pcx + 1][pcy] == '*'||pcx+1>9) && pan1 == 0)
		{
			p++;
			pan1++;
		}
		if (p == 4 && map[pcx][pcy - 1] != '*' && pan1 == 0&&pcy-1>=0)
		{
			pcy--;
			pan1++;
		}
		if (p == 4 && (map[pcx][pcy - 1] == '*'||pcy-1<0) && pan1 == 0)
		{
			p++;
			pan1++;
		}
		if (q == 1 && map[pjx - 1][pjy] != '*' && pan2 == 0&&pjx-1>=0)
		{
			pjx--;
			pan2++;
		}
		if (q == 1 && (map[pjx - 1][pjy] == ' * '||pjx-1<0) && pan2 == 0)
		{
			q++;
			pan2++;
		}
		if (q == 2 && map[pjx][pjy + 1] != '*' && pan2 == 0&&pjy+1<=9)
		{
			pjy++;
			pan2++;
		}
		if (q == 2 && (map[pjx][pjy + 1] == '*'||pjy+1>9) && pan2 == 0)
		{
			q++;
			pan2++;
		}
		if (q == 3 && map[pjx + 1][pjy] != '*' && pan2 == 0&&pjx+1<=9)
		{
			pjx++;
			pan2++;
		}
		if (q == 3 && (map[pjx + 1][pjy] == '*'||pjx+1>9) && pan2 == 0)
		{
			q++;
			pan2++;
		}
		if (q == 4 && map[pjx][pjy - 1] != '*' && pan2 == 0&&pjy-1>=0)
		{
			pjy--;
			pan2++;
		}
		if (q == 4 && (map[pjx][pjy - 1] == '*'||pjy-1<0) && pan2 == 0)
		{
			q++;
			pan2++;
		}
		res++;
	}
	cout << res;
	return 0;
}
2023/4/23 21:52
加载中...