日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

程序设计思维 week10 限时大模拟-魔方

發(fā)布時(shí)間:2024/5/8 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 程序设计思维 week10 限时大模拟-魔方 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

A-字符串ST

題目

東東有一個(gè)字符串X,該串包含偶數(shù)個(gè)字符,一半是 S 字符,一半是 T 字符
東東可以對(duì)該字符串執(zhí)行 1010000 次操作:如果存在 ST 是該串的子串,則刪除掉最左邊的 ST。
即 TSTTSS?TTSS、SSSTTT?SSTT?ST?空

Input

(2 ≦ |X| ≦ 200,000)

Output

輸出最終串的長(zhǎng)度

Sample Input

TSTTSS

Sample Output

4

思路

類(lèi)似于括號(hào)匹配,利用棧。
當(dāng)前字符s[i]為’S’時(shí),當(dāng)前字符入棧;棧不為空且當(dāng)前字符s[i]為’T’且棧頂字符st.top()為’S’時(shí),彈出棧頂元素。最后輸出棧中元素個(gè)數(shù)。

總結(jié)

一開(kāi)始沒(méi)有想到棧,自己使用兩個(gè)變量記錄下標(biāo)模擬了上述思路的過(guò)程,但是會(huì)wa。后來(lái)忽然想起棧,又重寫(xiě)了代碼,但是re,發(fā)現(xiàn)是彈出棧頂元素時(shí)沒(méi)有判斷棧為空。

代碼

#include<iostream> #include<string> #include <stack> #include<algorithm> using namespace std;int main(){string s;cin>>s;stack<char> st;for(int i=0;i<s.length();i++){if(i==0)st.push(s[i]);else{if(!st.empty()&&st.top()=='S'&&s[i]=='T'){st.pop();}else{st.push(s[i]);}}}cout<<st.size();return 0; }

B-東東轉(zhuǎn)魔方

題目

東東有一個(gè)二階魔方,即2×2×2的一個(gè)立方體組。立方體由八個(gè)角組成。
魔方的每一塊都用三維坐標(biāo)(h, k, l)標(biāo)記,其中h, k, l∈{0,1}。六個(gè)面的每一個(gè)都有四個(gè)小面,每個(gè)小面都有一個(gè)正整數(shù)。
對(duì)于每一步,東東可以選擇一個(gè)特定的面,并把此面順時(shí)針或逆時(shí)針轉(zhuǎn)90度。
請(qǐng)你判斷,是否東東可以在一個(gè)步驟還原這個(gè)魔方(每個(gè)面沒(méi)有異色)。

Input

輸入的第一行包含一個(gè)整數(shù)N(N≤30),這是測(cè)試用例的數(shù)量。
對(duì)于每個(gè)測(cè)試用例, 第 1~4 個(gè)數(shù)描述魔方的頂面,這是常見(jiàn)的2×2面,由(0,0,1),(0,1,1),(1,0,1),(1,1,1)標(biāo)記。四個(gè)整數(shù)對(duì)應(yīng)于上述部分。

第 5~8 個(gè)數(shù)描述前面,即(1,0,1),(1,1,1),(1,0,0),(1,1,0)的公共面。四個(gè)整數(shù) 與上述各部分相對(duì)應(yīng)。

第 9~12 個(gè)數(shù)描述底面,即(1,0,0),(1,1,0),(0,0,0),(0,1,0)的公共面。四個(gè)整數(shù)與上述各部分相對(duì)應(yīng)。

第 13~16 個(gè)數(shù)描述背面,即(0,0,0),(0,1,0),(0,0,1),(0,1),(0,1,1)的公共面。四個(gè)整數(shù)與上述各部分相對(duì)應(yīng)。

第 17~20 個(gè)數(shù)描述左面,即(0,0,0),(0,0,1),(1,0,0),(1,0,1)的公共面。給出四個(gè)整數(shù)與上述各部分相對(duì)應(yīng)。

第 21~24 個(gè)數(shù)描述了右面,即(0,1,1),(0,1,0),(1,1,1),(1,1,0)的公共面。給出四個(gè)整數(shù)與上述各部分相對(duì)應(yīng)。

換句話(huà)說(shuō),每個(gè)測(cè)試用例包含24個(gè)整數(shù)a、b、c到x。你可以展開(kāi)表面以獲得平面圖,如下所示。

+ - + - + - + - + - + - + | q | r | a | b | u | v |+ - + - + - + - + - + - + | s | t | c | d | w | x |+ - + - + - + - + - + - +| e | f |+ - + - +| g | h |+ - + - +| i | j |+ - + - +| k | l |+ - + - +| m | n |+ - + - +| o | p |+ - + - +

Ouput

對(duì)于每個(gè)測(cè)試用例,魔方如果可以至多 “只轉(zhuǎn)一步” 恢復(fù),輸出YES,則輸出NO。

Sample Input

4 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 6 6 6 6 1 1 1 1 2 2 2 2 3 3 3 3 5 5 5 5 4 4 4 4 1 4 1 4 2 1 2 1 3 2 3 2 4 3 4 3 5 5 5 5 6 6 6 6 1 3 1 3 2 4 2 4 3 1 3 1 4 2 4 2 5 5 5 5 6 6 6 6

Sample Output

YES YES YES NO

思路

使用cube[]數(shù)組記錄每個(gè)方格的顏色,題目中的a~x面分別對(duì)應(yīng)cube[1]~cube[24]。
按照題目描述擺放魔方確定上下左右前后面,可以分為四種情況:

  • 上下面顏色相同,需要轉(zhuǎn)前后左右面;
  • 前后面顏色相同,需要轉(zhuǎn)上下前后面;
  • 左右面顏色相同,需要轉(zhuǎn)上下前后面;
  • 其他。

對(duì)于前三種情況,每種情況中又可以分出兩種情況:

  • 順時(shí)針轉(zhuǎn)90度;
  • 逆時(shí)針轉(zhuǎn)90度(即順時(shí)針轉(zhuǎn)270度)。

在代碼中,用必要條件判斷進(jìn)入四種情況的哪一個(gè),判斷分別是:

  • 前面中靠上的2個(gè)方格顏色相同,靠下的2個(gè)方格顏色相同,且兩者顏色不同;
  • 上面中靠前的2個(gè)方格顏色相同,靠后的2個(gè)方格顏色相同,且兩者顏色不同;
  • 上面中靠左的2個(gè)方格顏色相同,靠右的2個(gè)方格顏色相同,且兩者顏色不同。
  • 其他。

對(duì)于四種情況,再轉(zhuǎn)到其對(duì)應(yīng)的順/逆時(shí)針轉(zhuǎn)90度的函數(shù)或不轉(zhuǎn)的函數(shù),看操作后是否還原成功。
判斷是否還原成功對(duì)著折好的魔方看就好了。

總結(jié)

我太懶了,懶得折魔方。一開(kāi)始想用三維坐標(biāo)記錄顏色,寫(xiě)著寫(xiě)著發(fā)現(xiàn)一個(gè)小魔方塊有三面,也就是三個(gè)顏色,而我只用了一個(gè)坐標(biāo)來(lái)表示一個(gè)小魔方塊,就很尷尬。
折個(gè)魔方又不費(fèi)力,為什么不折一個(gè)呢。

代碼

#include <algorithm> #include <cstdio> using namespace std; int cube[26];bool solve1(){//上下前后轉(zhuǎn)for(int i=17;i<20;i++){//左面是否同色,右面是否同色if(cube[i]!=cube[i+1]||cube[i+4]!=cube[i+5])return false;}if(cube[5]==cube[7]&&cube[6]==cube[8]&&cube[9]==cube[11]&&cube[10]==cube[12]&&cube[13]==cube[15]&&cube[14]==cube[16]){if(cube[3]==cube[6]&&cube[7]==cube[10]&&cube[11]==cube[14]&&cube[15]==cube[2])return true;if(cube[1]==cube[16]&&cube[13]==cube[12]&&cube[9]==cube[8]&&cube[5]==cube[4])return true;}return false; } bool solve2(){//上下左右轉(zhuǎn)for(int i=5;i<8;i++){//前面是否同色,后面是否同色if(cube[i]!=cube[i+1]||cube[i+8]!=cube[i+9])return false;}if(cube[21]==cube[22]&&cube[23]==cube[24]&&cube[9]==cube[10]&&cube[11]==cube[12]&&cube[17]==cube[18]&&cube[19]==cube[20]){if(cube[2]==cube[23]&&cube[22]==cube[10]&&cube[11]==cube[19]&&cube[18]==cube[3])return true;if(cube[1]==cube[20]&&cube[17]==cube[9]&&cube[12]==cube[24]&&cube[21]==cube[4])return true;}return false; } bool solve3(){//前后左右轉(zhuǎn)for(int i=1;i<4;i++){if(cube[i]!=cube[i+1]||cube[i+8]!=cube[i+9])return false;}if(cube[21]==cube[23]&&cube[22]==cube[24]&&cube[15]==cube[16]&&cube[13]==cube[14]&&cube[18]==cube[20]&&cube[17]==cube[19]){if(cube[6]==cube[24]&&cube[21]==cube[14]&&cube[15]==cube[17]&&cube[20]==cube[7])return true;if(cube[5]==cube[19]&&cube[18]==cube[13]&&cube[16]==cube[22]&&cube[23]==cube[8])return true;}return false; } bool solve4(){//不轉(zhuǎn)for(int i=1;i<4;i++){for(int j=0;j<6;j++){if(cube[i+j*4]!=cube[i+j*4+1])return false;}}return true; }bool solve(){if(cube[1]==cube[3]&&cube[2]==cube[4]&&cube[1]!=cube[2])return solve1();if(cube[1]==cube[2]&&cube[3]==cube[4]&&cube[1]!=cube[3])return solve2();if(cube[5]==cube[6]&&cube[7]==cube[8]&&cube[5]!=cube[7])return solve3();return solve4(); }int main(){int n;scanf("%d",&n);while(n--){for(int i=1;i<=24;i++)scanf("%d",&cube[i]);if(solve())printf("YES\n");elseprintf("NO\n");}return 0; }

題目鏈接

總結(jié)

以上是生活随笔為你收集整理的程序设计思维 week10 限时大模拟-魔方的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩精品网址 | 久久中文在线 | 狠狠狠狠狠狠干 | 中文字幕人妻一区二区三区在线视频 | 久久久精品欧美 | 欧美日韩不卡在线 | 亚洲天堂av一区二区 | 九九热精品视频在线 | 韩国一区二区三区四区 | 久久噜噜| www夜夜 | 日本成片网 | 天堂在线观看免费视频 | 国产高清在线视频 | 亚洲精品一区二区三区蜜臀 | 激情网站免费 | www网站在线观看 | 伊人五月天 | 国产精品第一国产精品 | 无码人妻丰满熟妇啪啪欧美 | 久久久久免费看 | 嫩模一区 | 免费看黄色网址 | 欧美激情在线观看一区 | 日韩欧美毛片 | 香蕉钻洞视频 | 日本在线看 | 亚洲男人精品 | 免费在线观看小视频 | 中国女人特级毛片 | 欧美日韩精品久久久 | 日本一区二区在线 | 一区二区国产精品 | 天天干b | 国外成人在线视频 | www操操操 | 亚洲一区精品视频 | 激情四射综合网 | 中文在线观看高清视频 | 大肉大捧一进一出好爽视频 | 亚洲色图国产精品 | 日本精品免费在线观看 | 亚洲精品在线影院 | youjizz欧美| 国产网红av | 色香蕉视频 | 中文在线观看高清视频 | 日本涩涩网站 | 看日本黄色录像 | 色图综合 | 91爱爱爱爱| 欧洲色播 | 日本免费无人高清 | 操操操操操操操操操操 | 欧美激情自拍 | 色图av | 精品一区二区亚洲 | 亚洲五码在线 | 高清人妖shemale japan | 日本在线视频观看 | 成人爽a毛片一区二区免费 日本高清免费看 | 六月激情综合 | 涩涩精品| 91官网视频 | 波多野结衣伦理 | 97视频一区二区三区 | 亚洲熟伦熟女新五十路熟妇 | 女同动漫免费观看高清完整版在线观看 | 国产91免费观看 | 91成人在线看 | 影音先锋激情在线 | 国产无码精品合集 | 国产美女主播在线 | 三级av片| 亚洲精品女| 国产美女精品人人做人人爽 | 日本不卡视频在线播放 | а√天堂中文在线资源8 | 久草免费在线播放 | 色七七视频 | 精品视频一区二区在线观看 | 成人动漫免费观看 | 国产福利片在线 | 天天激情 | 天天爽夜夜春 | 日本少妇一区二区三区 | 在线观看不卡的av | 国产精品自拍第一页 | 国产免费一级 | 欧美成人免费播放 | 337p日本欧洲亚洲大胆张筱雨 | 女人的天堂av | 国内性视频 | 公交顶臀绿裙妇女配视频 | 一级黄色播放 | 少妇人妻真实偷人精品视频 | 国产美女特级嫩嫩嫩bbb | av一卡二卡| 精品少妇人妻av一区二区三区 |