UVa 253 - Cube painting

来源:互联网 发布:淘宝兼职平面模特 编辑:程序博客网 时间:2024/05/16 02:52

题目不难,是判断骰子是否等价。昨天晚上开始打的,交了一次WA,今天换了个思路做又WA,感觉没地方错,最后万万没想到是把TRUE打成TURE了。。。改过来之后直接Ac。。以后这种低级错误要注意。。


#include<iostream>#include<cstring>#define maxn 15using namespace std;char a[maxn],b[maxn],str[maxn];void revolve_x(){    char c;    c=b[0];    b[0]=b[1];    b[1]=b[5];    b[5]=b[4];    b[4]=c;}void revolve_y(){    char c;    c=b[1];    b[1]=b[3];    b[3]=b[4];    b[4]=b[2];    b[2]=c;}void revolve_z(){    char c;    c=b[0];    b[0]=b[2];    b[2]=b[5];    b[5]=b[3];    b[3]=c;}void revolve(int n){    if(n==0)        revolve_x();    else if(n==1)        revolve_z();    else if(n==2)    {        revolve_z();        revolve_z();    }    else if(n==3)    {        revolve_z();        revolve_z();        revolve_z();    }    else if(n==4)        revolve_x();}int judge(){    int t=0;    for(int i=0;i<6;i++)    {        for(int k=0;k<4;k++)        {            if(!strcmp(a,b))                return 1;            else                revolve_y();        }        revolve(i);    }    return t;}int main(){    memset(str,0,sizeof(str));    while(cin>>str)    {        memset(a,0,sizeof(a));        memset(b,0,sizeof(b));        for(int i=0;i<6;i++)            a[i]=str[i];        for(int i=0;i<6;i++)            b[i]=str[i+6];        if(judge())            cout<<"TRUE"<<endl;        else            cout<<"FALSE"<<endl;    }    return 0;}


0 0
原创粉丝点击