魔方

思路:

  模拟;

代码:

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

AC日记——魔方 洛谷 P2007的更多相关文章

  1. AC日记——最大数 洛谷 P1198 [JSOI2008]

    题目描述 现在请求你维护一个数列,要求提供以下两种操作: 1. 查询操作. 语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值. 限制:L不超过当前数列的长度. 2. 插入操作 ...

  2. AC日记——中位数 洛谷 P1168

    题目描述 给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[2], …, A[2k - 1]的中位数.[color=red]即[/color] ...

  3. AC日记——传染病控制 洛谷 P1041

    传染病控制 思路: 题目想问的是: 有一棵树: 对于除1外每个深度可以剪掉一棵子树: 问最后剩下多少节点: 题目意思一简单,这个题立马就变水了: 搜索就能ac: 数据有为链的情况,按深度为层次搜索的话 ...

  4. AC日记——忠诚 洛谷 P1816

    题目描述 老管家是一个聪明能干的人.他为财主工作了整整10年,财主为了让自已账目更加清楚.要求管家每天记k次账,由于管家聪明能干,因而管家总是让财主十分满意.但是由于一些人的挑拨,财主还是对管家产生了 ...

  5. AC日记——独木桥 洛谷 p1007

    题目背景 战争已经进入到紧要时间.你是运输小队长,正在率领运输部队向前线运送物资.运输任务像做题一样的无聊.你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们.士兵 ...

  6. AC日记——潜伏者 洛谷 P1071 (模拟)

    题目描述 R 国和 S 国正陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动.历尽艰险后,潜伏于 S 国的 R 国间谍小 C 终于摸清了 S 国军用密码的编码规则: 1. S 国军方内部欲发送的原 ...

  7. AC日记——机器翻译 洛谷 P1540

    题目背景 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章. 题目描述 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换.对于每个英文单词,软件会先 ...

  8. AC日记——统计和 洛谷 P2068

    统计和 思路: 水题: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 int n,m,tree ...

  9. AC日记——送花 洛谷 P2073

    送花 思路: 线段树: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 struct TreeN ...

随机推荐

  1. 【bzoj1061】[NOI2008]志愿者招募 线性规划与费用流

    题目描述 申奥成功后,布布经过不懈努力,终于成为奥组委下属公司人力资源部门的主管.布布刚上任就遇到了一个难题:为即将启动的奥运新项目招募一批短期志愿者.经过估算,这个项目需要N 天才能完成,其中第i ...

  2. sql in()批量操作

    //批量修改 update 表A   set A.name='n'  where   A.id    in(字符串); //批量删除 delete  from    表名称 where  列名称   ...

  3. C#中构造函数和析构函数的用法

    构造函数与析构函数是一个类中看似较为简单的两类函数,但在实际运用过程中总会出现一些意想不到的运行错误.本文将较系统的介绍构造函数与析构函数的原理及在C#中的运用,以及在使用过程中需要注意的若干事项.一 ...

  4. 51nod 1967路径定向(欧拉回路)

    题目大意:给出一个图,安排边的方向,使得入度等于出度的点数最多,并给出方案. 首先假设是个无向图,不妨认定偶点必定可以满足条件 我们还会发现,奇点的个数必定是偶数个 那么如果把奇点两两用辅助边连起来, ...

  5. [CF1065A]Vasya and Chocolate

    题目大意:有$s$元,一个物品$c$元,每买$a$个就送$b$个,问一共可以买多少. 题解:全部买好,最后看可以送多少(其实是因为我这道题交错了,无聊才做的) 卡点:无 C++ Code: #incl ...

  6. 【BZOJ】2453: 维护队列【BZOJ】2120: 数颜色 二分+分块(暴力能A)

    先说正解:把所有相同的数相成一个链在每一个区间里的种数就是不同链的链头,那么记录每个数的上个相同数所在位置,那么只要找出l到r之间前驱值在l之前的数的个数就可以了 本人打的暴力,有一个小技巧,用cha ...

  7. Codeforces Round #351 (VK Cup 2016 Round 3, Div. 2 Edition) C (用map 超时)

    C. Bear and Colors time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  8. elemetUi 组件--el-upload

    [需求]实现上传Excel文件,在上传到服务器时,还要附加一个参数,在请求上传文件接口前,先要进行文件格式判断. [知识点] 1.el-upload 官方文档中,主要用到了以下属性: data 可选参 ...

  9. uoj198【CTSC2016】时空旅行

    传送门:http://uoj.ac/problem/198 [题解] 首先y.z是没有用的.. 然后式子就是w = (x0-xi)^2+ci的最小值,化出来可以变成一个直线的形式. 然后我们可以用线段 ...

  10. [BZOJ1040] [ZJOI2008]骑士 解题报告

    Description Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战火 ...