• UVa 253 Cube painting


    Q253: Cube painting

    我們想要為方塊塗上顏色,我們有三種顏色:藍色、紅色、綠色。方塊的每一面塗上其中一種顏色。現在,我們把方塊的6個面以1~6來編號,如下圖Figure 1:

    因為一個方塊有6面,所以我們有36=729種不同的方式來塗方塊。然而當我們忽略面上的編號時,不同塗方塊的方式就會少很多,那是因為方塊可以旋轉的緣故。請看以下的例子:我們以6個字元來表達一個方塊6個面上塗的顏色(字元為b,r,g其中之一,分別代表blue, red, green)。第i個字元代表第i面上的顏色,例如下圖Figure 2就是rbgggr的圖,Figure 3就是rggbgr的圖。請注意:Figure 2 和 Figure 3其實塗色的方式是一樣的,如果我們把Figure 2的方塊繞垂直方向向右轉90度,就變成Figure 3中的方塊了。

    Input

    每組測試資料一列。每列有12個字元。前6個字元代表一個方塊,後6個字元代表另一個方塊。你的程式必須判斷這2個方塊是否塗色的方式是一樣的,也就是說,是否可以經由旋轉的方式,使一個方塊變成另一個。

    Output

    對每組測試資料輸出一列。如果第一個方塊可以旋轉而變成第二個方塊,則輸出TRUE,否則輸出FALSE。

    Sample Input

    rbgggrrggbgr
    rrrbbbrrbbbr
    rbgrbgrrrrrg

    Sample Output

    TRUE
    FALSE
    FALSE

    求两个正方体的带有的颜色是否相同。

    最少2次旋转就可以得到12种情况。



    #include<iostream>
     #include<stdio.h>
     
     using namespace std;
     
     int main()
     {
         int i, j;
         char c1[7], c2[7], str[13];
         while(scanf("%s", str)!=EOF)
         {
             for (i=0; i<6; i++)
                 c1[i]=str[i];
             for (; i<12; i++)
                 c2[i-6]=str[i];
             int ct;
             for (i=0; i<3; i++)
             {
                 ct=0;
                 for (j=0; j<6; j++)
                 {
                     if (c1[i] == c2[j] && c1[5-i] == c2[5-j])
                     {
                         ct=1;
                         c2[j]='0';
                         c2[5-j]='0';
                         break;
                     }
                 }
                 if (!ct) break;
             }
             if (!ct)
             {
                 cout << "FALSE" << endl;
                 continue;
             }
             cout << "TRUE" << endl;
         }
         return 0;
     }
    
  • 相关阅读:
    洛谷P4315 月下“毛景树”(边权维护)
    Water Tree CodeForces
    P3384 【模板】树链剖分
    Codeforces 161D Distance in Tree(树的点分治)
    git命令及使用方法
    vue下拉刷新,下拉加载更多
    Vue中 v-for 生成样式并默认选中第一个样式
    js面向对象实现分页版轮播图
    js面向对象实现购物车
    js面向对象实现放大镜
  • 原文地址:https://www.cnblogs.com/UnGeek/p/2623397.html
Copyright © 2020-2023  润新知