求助,P7724 #10 WA了,其余正确
查看原帖
求助,P7724 #10 WA了,其余正确
66097
tjhdyhj楼主2021/7/28 21:07
#include <iostream>
using namespace std;
int main ()
{
	int n[5],m[5],n0=0,m0=0,i,a,b,flag=1,step=0;
	cin>>n[1]>>n[2]>>n[3]>>n[4];
	cin>>m[1]>>m[2]>>m[3]>>m[4];
	for (i=1;i<=4;i++)
	{
		if (n[i]==0)
		    n0++;
	}
	if (n[1]==m[1]&&n[2]==m[2]&&n[3]==m[3]&&n[4]==m[4])
	   step=1;
	if (n0==0&&step==0)
	    cout<<"No";
	else if (n0==0&&step==1)
	    cout<<"Yes";
    else if (n0==3||n0==2)
	    cout<<"Yes";
    else if (n0==4)
        cout<<"Yes";
    else 
    {
    	step=n[3];n[3]=n[4];n[4]=step;
    	step=m[3];m[3]=m[4];m[4]=step;
    	for (i=1;i<=4;i++)
    	{
    		if (m[i]==n[1])
    		    break;
		}
		a=1;
		b=i;
		for (i=1;i<=4;i++)
		{
			if (m[b]!=n[a])
			{
				flag=0;
				break;
			}
			a++;
			if (a>4)
			    a=a-4;
            if (n[a]==0)
			    a++;
            if (a>4)
			    a=a-4;
			b++;
			if (b>4)
			    b=b-4;
            if (m[b]==0)
			    b++;
            if (b>4)
			    b=b-4;
		}
		if (flag==1)
		    cout<<"Yes";
        else
            cout<<"No";
	}
	return 0;
}

思路就是根据空的数量判断

2021/7/28 21:07
加载中...