1. 程式人生 > >HDOJ 5292 Pocket Cube 構造

HDOJ 5292 Pocket Cube 構造

Pocket Cube is the 2×2×2 equivalent of a Rubik’s Cube(3×3×3). The cube consists of 8 pieces, all corners. (from wiki)

It was a Pocket Cube. Unfortunately, the Cube fell to the ground and broke. It took you some time to explore the construction of the Cube. Then you assembled the Pocket Cube. Unfortunately, you didn’t assembled it in the right way. So here is the question. You want to know whether it can return to the right position.

The right position means four blocks in each face has the same color. You can only rotate the Cube to return it to the right position.

A Cube is given in its layout.


The right position rotates in red face clockwisely. 
You can get more details from input case.
w represents white , y represents yellow , o represents orange , r represents red , g represents green , b represents blue. In the right position, white and yellow , orange and red , green and blue are in the opposite face. 

相關推薦

HDOJ 5292 Pocket Cube 構造

Pocket Cube is the 2×2×2 equivalent of a Rubik’s Cube(3×3×3). The cube consists of 8 pieces, all corners. (from wiki) It was a Pocket Cube. Unfortunately

hdu 5292 Pocket Cube

        給一個二階魔方的狀態,可能安裝錯了,問是否可以還原。         作為一個Cuber,十分鐘碼出來怒拿此題FB。因為二階魔方,可以做到交換任意兩個塊,所以塊的位置是不用考慮的,只用

Pocket Cube

NPU bsp 中國石油 chmod blank ubi all include left Pocket Cube http://acm.hdu.edu.cn/showproblem.php?pid=5983 Time Limit: 2000/1000 MS (Java/O

HDU--5983 Pocket Cube

連結:https://www.nowcoder.com/acm/contest/207/B 來源:牛客網   題目描述 The Pocket Cube, also known as the Mini Cube or the Ice Cube, is the 2×2×2 equiva

Pocket Cube UVALive - 7735結題報告

題目大意:給你一個二維魔方,只讓你將一個面轉動90度或者不轉動,問你是否能使每個面的數字都相同。 題目連結 這是一道模擬題,模擬的方法有很多,最常用的有兩種: 1、直接暴力列舉,每個面的轉動情況,判斷後輸出結果; 2、每轉動一次,便將整個魔方翻轉,重新定義上下,左右,前後面。(翻

HDU 5983 Pocket Cube 【模擬】

題意:2*2*2的魔方只轉一次,問是否能讓魔方六面都相等 思路: 用陣列記錄每個面的數字,並且從1到24編號,注意這裡要根據題目要求的輸入順序編號,能一次就完成任務的情況只有兩種,一種是六面都已經滿足條件了,第二種是存在兩個對立面相等的情況,只限兩個,多一個都不行;對

Pocket Cube UVALive

題目大意:給你一個二維魔方,只讓你將一個面轉動90度或者不轉動,問你是否能使每個面的數字都相同。 題目連結 這是一道模擬題,模擬的方法有很多,最常用的有兩種: 1、直接暴力列舉,每個面的轉動情況,判斷後輸出結果; 2、每轉動一次,便將整個魔方翻轉,重新定義上下,

hdu 5983 Pocket Cube(模擬)

Pocket Cube Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s):

Pocket Cube (模擬+DFS)

題目連結 題意:給一個n,按下圖順序輸入,求n次操作能轉出最多多少個面. 題解:dfs模擬即可,不過需要剪枝,不然爆炸~//二階魔方模板,三階同理 程式碼如下: #include<iostream> #include<cstdio> #in

HDU 4801 Pocket Cube (模擬)

題意: 給出一個2階魔方,問在少於N步旋轉內,最多產生多少個同樣顏色的面? 思路: 共6個有效方向,模擬即可。 有一個坑點,顏色不是0-5的,是 Integer 。判重時注意下即可 程式碼: #include <bits/stdc++.h> using

HDU 4801 Pocket Cube(模擬題——轉魔方)

題面: Pocket Cube Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 882    Acce

HDU 5983-Pocket Cube(一步還原二階魔方)

The first line of input contains one integer N(N ≤ 30) which is the number of test cases. For each test case, the first line describes the top face of the

ZOJ 3736 Pocket Cube(暴力,魔方)

魔方的題,暴力睡過。1930ms,差點久掛了。 #pragma comment(linker, "/STACK:1024000000,1024000000") #include <cstdio> #include <cmath> #include &

HDU 4801 Pocket Cube(暴力模擬 dfs)

題意:求旋轉次數小於等於n(每次旋轉90度)的情況下,求出魔方拼出完整的面的最大面數。 AC程式碼: #include <cstdio> #include <cstring&

ZOJ 3736 Pocket Cube 腦補+BFS

       2*2*2的魔方,給出初始狀態和最大步數N,問在旋轉不超過N次的情況下,最多能還原魔方的幾個面。        這題的關鍵是腦補出魔方六種操作的方案...最好的辦法是把題上的圖抄下來,做成一個正方體....然後就各種輕鬆加愉快了....由於最大的步數僅僅是7,

ZOJ 3736 Pocket Cube

clu return dfs n) scanf include ++ algo ace 唯一思考點:左側順時針轉等價於右側逆時針轉,12種轉法變6種 類型:水題 總結:我很蠢 #include <iostream> #include <cstr

【CodeForces - 471D 】【構造差分kmp】MUH and Cube Walls

題意:       給你一個數組A,再給你一個數組B,我們可以任意將陣列B整體增加或者減少值X(整數),我們可以進行修改值的操作無限次,每次我們要在陣列A中找尋有幾段和陣列B完全匹配的子段。   思路:      

471D 】【構造差分kmp】MUH and Cube Walls

題意:       給你一個數組A,再給你一個數組B,我們可以任意將陣列B整體增加或者減少值X(整數),我們可以進行修改值的操作無限次,每次我們要在陣列A中找尋有幾段和陣列B完全匹配的子段。 思路:       可以發現由於可以將這個區間的數整體增加或減少一個數,因

線段樹的構造

start color return isp build != write 註意 log http://www.lintcode.com/zh-cn/problem/segment-tree-build/ 註意點: 根節點用root表示     把start == end的

HDOJ 4003 Find Metal Mineral

text input cond mil accept clas 情況 accepted tar 題意: 一棵有權樹,從根結點中放入 K 個機器人。求用這 K 個機器人遍歷全部的結點最少的權值和。 思路: 1. dp[u][i] 表示給以 u 為根節點的子樹