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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

AC日记——魔方 洛谷 P2007

發布時間:2025/3/18 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 AC日记——魔方 洛谷 P2007 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

魔方

?

思路:

  模擬;

?

代碼:

#include <cstdio> #include <cstring> #include <iostream> #include <algorithm>using namespace std;struct MFType {int ai[4][4]; }; struct MFType ci[7];int len;char done[500],ch[10];/*1.front 2.back 3.left 4.right 5.top 6.under*/void OperationType_right_turning90() {MFType *now=&ci[4],tmp=ci[4];now->ai[1][1]=tmp.ai[3][1];now->ai[1][2]=tmp.ai[2][1];now->ai[1][3]=tmp.ai[1][1];now->ai[2][1]=tmp.ai[3][2];now->ai[2][3]=tmp.ai[1][2];now->ai[3][1]=tmp.ai[3][3];now->ai[3][2]=tmp.ai[2][3];now->ai[3][3]=tmp.ai[1][3];now=&ci[1],tmp=ci[1];MFType *pos=&ci[6];now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3];now=&ci[6],pos=&ci[2];now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3];now=&ci[2],pos=&ci[5];now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3];now=&ci[5],pos=&tmp;now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3]; }void OperationType_right_turningback90() {MFType *now=&ci[4],tmp=ci[4];now->ai[1][1]=tmp.ai[1][3];now->ai[1][2]=tmp.ai[2][3];now->ai[1][3]=tmp.ai[3][3];now->ai[2][1]=tmp.ai[1][2];now->ai[2][3]=tmp.ai[3][2];now->ai[3][1]=tmp.ai[1][1];now->ai[3][2]=tmp.ai[2][1];now->ai[3][3]=tmp.ai[3][1];now=&ci[1],tmp=ci[1];MFType *pos=&ci[5];now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3];now=&ci[5],pos=&ci[2];now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3];now=&ci[2],pos=&ci[6];now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3];now=&ci[6],pos=&tmp;now->ai[1][3]=pos->ai[1][3];now->ai[2][3]=pos->ai[2][3];now->ai[3][3]=pos->ai[3][3]; }void OperationType_top_turning90() {MFType *now=&ci[5],tmp=ci[5];now->ai[1][1]=tmp.ai[3][1];now->ai[1][2]=tmp.ai[2][1];now->ai[1][3]=tmp.ai[1][1];now->ai[2][1]=tmp.ai[3][2];now->ai[2][3]=tmp.ai[1][2];now->ai[3][1]=tmp.ai[3][3];now->ai[3][2]=tmp.ai[2][3];now->ai[3][3]=tmp.ai[1][3];now=&ci[1],tmp=ci[1];MFType *pos=&ci[3];now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3];now=&ci[3],pos=&ci[2];now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3];now=&ci[2],pos=&ci[4];now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3];now=&ci[4],pos=&tmp;now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3]; }void OperationType_top_turningback90() {MFType *now=&ci[5],tmp=ci[5];now->ai[1][1]=tmp.ai[1][3];now->ai[1][2]=tmp.ai[2][3];now->ai[1][3]=tmp.ai[3][3];now->ai[2][1]=tmp.ai[1][2];now->ai[2][3]=tmp.ai[3][2];now->ai[3][1]=tmp.ai[1][1];now->ai[3][2]=tmp.ai[2][1];now->ai[3][3]=tmp.ai[3][1];now=&ci[1],tmp=ci[1];MFType *pos=&ci[4];now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3];now=&ci[4],pos=&ci[2];now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3];now=&ci[2],pos=&ci[3];now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3];now=&ci[3],pos=&tmp;now->ai[1][1]=pos->ai[1][1];now->ai[1][2]=pos->ai[1][2];now->ai[1][3]=pos->ai[1][3]; }void debug() {printf("\n");for(int i=1;i<=6;i++){printf("%d\n",i);for(int j=1;j<=3;j++){for(int v=1;v<=3;v++) printf("%d",ci[i].ai[j][v]);printf("\n");}printf("\n");}printf("\n"); }int main() {freopen("cube.in","r",stdin);freopen("cube.out","w",stdout);scanf("%s",done),len=strlen(done);for(int i=1;i<=6;i++){for(int j=1;j<=3;j++){scanf("%s",ch);for(int v=1;v<=3;v++) ci[i].ai[j][v]=ch[v-1]-'0';}} // debug();for(int i=0;i<len;i++){if(done[i]=='1') OperationType_right_turning90();else if(done[i]=='2') OperationType_right_turningback90();else if(done[i]=='3') OperationType_top_turning90();else if(done[i]=='4') OperationType_top_turningback90(); // debug(); }for(int i=1;i<=6;i++){for(int j=1;j<=3;j++){for(int v=1;v<=3;v++) printf("%d",ci[i].ai[j][v]);printf("\n");}}return 0; }

?

轉載于:https://www.cnblogs.com/IUUUUUUUskyyy/p/6912748.html

總結

以上是生活随笔為你收集整理的AC日记——魔方 洛谷 P2007的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。