• 魔方→︿←


    #include<iostream>
    #include<cstring>
    #include<cmath>
    using namespace std;
    int f[4][4],b[4][4],l[4][4],r[4][4],u[4][4],d[4][4];
    void cao1(){
        int c[4];
        c[1]=f[1][3];
        c[2]=f[2][3];
        c[3]=f[3][3];
        for(int i=1;i<=3;i++)f[i][3]=d[i][3];
        for(int i=1;i<=3;i++)d[i][3]=b[i][3];
        for(int i=1;i<=3;i++)b[i][3]=u[i][3];
        for(int i=1;i<=3;i++)u[i][3]=c[i];
        int cc[4][4];
        for(int i=1;i<=3;i++)
        for(int j=1;j<=3;j++)
        cc[i][j]=r[i][j];
        for(int i=1;i<=3;i++)
        for(int j=1;j<=3;j++)
        r[i][j]=cc[4-j][i];
    }
    int cao2(){
        int c[4];
        c[1]=f[1][1];
        c[2]=f[1][2];
        c[3]=f[1][3];
        for(int i=1;i<=3;i++)f[1][i]=l[1][i];
        for(int i=1;i<=3;i++)l[1][i]=b[1][i];
        for(int i=1;i<=3;i++)b[1][i]=r[1][i];
        for(int i=1;i<=3;i++)r[1][i]=c[i];
        int cc[4][4];
        for(int i=1;i<=3;i++)
        for(int j=1;j<=3;j++)
        cc[i][j]=u[i][j];
        for(int i=1;i<=3;i++)
        for(int j=1;j<=3;j++)
        u[i][j]=cc[4-j][i];
    }
    int main(){
    //    freopen("cube.in","r",stdin);
    //    freopen("cube.out","w",stdout);
        string n;
        cin>>n;
        string st[19];
        cin>>st[1];
        for(int ii=0;ii<3;ii++)f[1][ii+1]=st[1][ii]-'0';
        cin>>st[2];
        for(int ii=0;ii<3;ii++)f[2][ii+1]=st[2][ii]-'0';
        cin>>st[3];
        for(int ii=0;ii<3;ii++)f[3][ii+1]=st[3][ii]-'0';
        cin>>st[4];
        for(int ii=0;ii<3;ii++)b[1][ii+1]=st[4][ii]-'0';
        cin>>st[5];
        for(int ii=0;ii<3;ii++)b[2][ii+1]=st[5][ii]-'0';
        cin>>st[6];
        for(int ii=0;ii<3;ii++)b[3][ii+1]=st[6][ii]-'0';
        cin>>st[7];
        for(int ii=0;ii<3;ii++)l[1][ii+1]=st[7][ii]-'0';
        cin>>st[8];
        for(int ii=0;ii<3;ii++)l[2][ii+1]=st[8][ii]-'0';
        cin>>st[9];
        for(int ii=0;ii<3;ii++)l[3][ii+1]=st[9][ii]-'0';
        cin>>st[10];
        for(int ii=0;ii<3;ii++)r[1][ii+1]=st[10][ii]-'0';
        cin>>st[11];
        for(int ii=0;ii<3;ii++)r[2][ii+1]=st[11][ii]-'0';
        cin>>st[12];
        for(int ii=0;ii<3;ii++)r[3][ii+1]=st[12][ii]-'0';
        cin>>st[13];
        for(int ii=0;ii<3;ii++)u[1][ii+1]=st[13][ii]-'0';
        cin>>st[14];
        for(int ii=0;ii<3;ii++)u[2][ii+1]=st[14][ii]-'0';
        cin>>st[15];
        for(int ii=0;ii<3;ii++)u[3][ii+1]=st[15][ii]-'0';
        cin>>st[16];
        for(int ii=0;ii<3;ii++)d[1][ii+1]=st[16][ii]-'0';
        cin>>st[17];
        for(int ii=0;ii<3;ii++)d[2][ii+1]=st[17][ii]-'0';
        cin>>st[18];
        for(int ii=0;ii<3;ii++)d[3][ii+1]=st[18][ii]-'0';
        
        for(int i=0;i<n.size() ;i++){
            if(n[i]=='1')cao1();
            if(n[i]=='2'){
                cao1();cao1();cao1();
            }
            if(n[i]=='3')cao2();
            if(n[i]=='4'){
                cao2();cao2();cao2();
            }
        }
    //    cout<<endl;
        for(int i=1;i<=3;i++)cout<<f[1][i];cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<f[2][i];cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<f[3][i] ;cout<<"
    ";
    //    cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<b[1][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<b[2][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<b[3][i] ;cout<<"
    ";
    //    cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<l[1][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<l[2][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<l[3][i] ;cout<<"
    ";
    //    cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<r[1][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<r[2][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<r[3][i] ;cout<<"
    ";
    //    cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<u[1][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<u[2][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<u[3][i] ;cout<<"
    ";
    //    cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<d[1][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<d[2][i] ;cout<<"
    ";
        for(int i=1;i<=3;i++)cout<<d[3][i] ;    cout<<"
    ";
    }

    Problem 2 魔方(cube.cpp/c/pas)

    【题目描述】

    ccy(ndsf)觉得手动复原魔方太慢了,所以他要借助计算机。

    ccy(ndsf)家的魔方都是3*3*3的三阶魔方,大家应该都见过。



    3的“顺时针”改为“逆时针”,即3 4以图为准。)
    ccy(ndfs)从网上搜了一篇攻略,并找人翻译成了他自己会做的方法。现在告诉你他的魔方情况,以及他从网上搜到的攻略,请你求出最后魔方变成什么样子。

    【输入格式】
       第一行,一串数字,表示从网上搜到的攻略。
       下面6*3行,每行3个数字,每三行表示魔方一个面的情况,六个面的顺序是前、后、左、右、上、下。

    【输出格式】
       6*3行,表示处理后的魔方,形式同输入。

    【样例输入】

    23
    121
    221
    111
    123
    321
    111
    123
    321
    132
    132
    231
    132
    121
    112
    233
    332
    111
    333

    【样例输出】

    123
    222
    113


    212
    321
    113


    122
    321
    132


    121
    333
    121


    211
    312
    113


    331
    111
    331

    【样例解释】

    【数据范围】

    40%的数据,攻略的长度小于5且仅有4种操作的其中一种

    100%的数据,攻略的长度小于100

    一个愚蠢的模拟

    输入太费事了。。。。。

    还有,题意似乎有点问题,要找给的样例来

  • 相关阅读:
    非关系数据库之mongodb入门到实战(8)mongodb的常用命令
    非关系数据库之mongodb入门到实战(7)mongodb的window版安装与使用详解
    非关系数据库之mongodb入门到实战(6)mongodb基础详解
    非关系数据库之redis入门到实战(5)Redis企业运用
    非关系数据库之redis入门到实战(4)Redis基本操作
    非关系数据库之redis入门到实战(3)Redis入门介绍与安装
    非关系数据库之redis入门到实战(2)Redis常用命令
    非关系数据库之redis入门到实战(1)Redis高级应用
    Java从入门到实战之(16)面向对象之对象的多态性(四)
    Java从入门到实战之(15)面向对象之接口(三)
  • 原文地址:https://www.cnblogs.com/nengshen/p/5990415.html
Copyright © 2020-2023  润新知