UVA 253 - Cube painting

来源:互联网 发布:js获得鼠标的位置 编辑:程序博客网 时间:2024/04/25 12:30

这道题主要是找对应关系,因为正方体的各各面都是有对应关系

 

#include <iostream>
#include<string.h>
using namespace std;

int main()
{
    int i,j;
    char a[15];//用来保存输入的颜色
    bool f,g;
    while(cin >> a)
    {
        f = 1;
        g = 1;
        for(i = 0; i < 3; i++)
          {
              f = 0;//用于标记是否是找到配对
              for(j = 6; j < 12; j++)//从另外一个正方体中查找
            {
              if(a[j] == a[i])//如果有相同的颜色,怎比较他的对面是否有相同
              {
                  /*if(j < 9)//是否是超过界限,来判断是否要加三还是减三
                  {
                      if(a[j + 3] ==  a[5-i])
                      {
                          a[j+ 3] = '?';//找到了就把值改掉
                          a[j] = '?';
                          f = 1;//已经找到配对的
                          break;
                      }
                  }
                  else
                  {
                      if(a[j - 3] == a[i+3])
                      {
                          a[j-3] = '?';
                          a[j] = '?';
                          f = 1;
                          break;
                      }
                  }*/
                  if(a[17-j] == a[5-i])
                  {
                      f = 1;
                      a[j] = '?';
                      a[17 - j] = '?';
                      break;
                  }
              }
          }
          if(!f)//如果没有找到配对则直接返回
          {
              g = 0;//标记这次查找失败
              break;
          }

          }
          if(g)//表明查找结果
          cout << "TRUE" << endl;
          else
          cout << "FALSE" << endl;
    }
    return 0;
}

原创粉丝点击