|
luogu UVA253 cube painting
穷举 可以用到数学思想:不管骰子怎么转动,相对的两面不变。
穷举AC代码:
- #include<bits/stdc++.h>
- using namespace std;
- int dir[6][6] = { { 0, 1, 2, 3, 4, 5 }, { 1, 0, 3, 2, 5, 4 }, { 2, 0, 1, 4, 5, 3 }, { 3, 0, 4, 1, 5, 2 }, { 4, 0, 2, 3, 5, 1 }, { 5, 1, 3, 2, 4, 0 } };
- char a[10],b[10],s[20];
- bool judge()
- {
- for (int i=0; i<6; i++)
- {
- char temp[10]="";
- for (int j=0; j<6; j++)
- temp[j]=a[dir[i][j]];
- for (int j=0; j<4; j++)
- {
- char c_temp;
- c_temp=temp[1];
- temp[1]=temp[2];
- temp[2]=temp[4];
- temp[4]=temp[3];
- temp[3]=c_temp;
- if (strcmp(temp,b)==0) return true;
- }
- }
- return false;
- }
- int main()
- {
- while (scanf("%s",s)!=EOF)
- {
- for (int i=0; i<6; i++)
- a[i]=s[i];
- a[6]=0;
- for (int i=0; i<6; i++)
- b[i]=s[i+6];
- b[6]=0;
- if (judge()) printf("TRUE\n");
- else printf("FALSE\n");
- }
- }
复制代码
|
|