AC日记——魔方 洛谷 P2007
思路:
模拟;
代码:
#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的更多相关文章
- AC日记——最大数 洛谷 P1198 [JSOI2008]
题目描述 现在请求你维护一个数列,要求提供以下两种操作: 1. 查询操作. 语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值. 限制:L不超过当前数列的长度. 2. 插入操作 ...
- AC日记——中位数 洛谷 P1168
题目描述 给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[2], …, A[2k - 1]的中位数.[color=red]即[/color] ...
- AC日记——传染病控制 洛谷 P1041
传染病控制 思路: 题目想问的是: 有一棵树: 对于除1外每个深度可以剪掉一棵子树: 问最后剩下多少节点: 题目意思一简单,这个题立马就变水了: 搜索就能ac: 数据有为链的情况,按深度为层次搜索的话 ...
- AC日记——忠诚 洛谷 P1816
题目描述 老管家是一个聪明能干的人.他为财主工作了整整10年,财主为了让自已账目更加清楚.要求管家每天记k次账,由于管家聪明能干,因而管家总是让财主十分满意.但是由于一些人的挑拨,财主还是对管家产生了 ...
- AC日记——独木桥 洛谷 p1007
题目背景 战争已经进入到紧要时间.你是运输小队长,正在率领运输部队向前线运送物资.运输任务像做题一样的无聊.你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们.士兵 ...
- AC日记——潜伏者 洛谷 P1071 (模拟)
题目描述 R 国和 S 国正陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动.历尽艰险后,潜伏于 S 国的 R 国间谍小 C 终于摸清了 S 国军用密码的编码规则: 1. S 国军方内部欲发送的原 ...
- AC日记——机器翻译 洛谷 P1540
题目背景 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章. 题目描述 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换.对于每个英文单词,软件会先 ...
- AC日记——统计和 洛谷 P2068
统计和 思路: 水题: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 int n,m,tree ...
- AC日记——送花 洛谷 P2073
送花 思路: 线段树: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 struct TreeN ...
随机推荐
- EXEL文件转成简书MD表格
EXEL文件转成简书MD表格 0.1.3 mac: https://github.com/fanfeilong/exceltk/blob/master/pub/exceltk.0.1.3.pkg wi ...
- 段寻址*****************************TBD
fffff880`01b05be1 ff9708020000 call qword ptr [rdi+208h] ds:002b:fffff980`0554ae88=fffffa8004b ...
- RabbitMQ 的行为艺术
RabbitMQ 的行为艺术 目录 简介 环境搭建 示例一:简单的 Hello World 示例二:发布/订阅模式 尝试发现 - 新物种 EasyNetQ 简介 RabbitMQ:一个消息系统,基于 ...
- 教你一步一步在linux中正确的安装Xcache加速php
#第一步,下载Xcache wget http://xcache.lighttpd.net/pub/Releases/3.1.0/xcache-3.1.0.tar.gz #第一步非常简单,如果你下载不 ...
- ES mapping field修改过程
Elasticsearch 的坑爹事--记录一次mapping field修改过程 http://www.cnblogs.com/Creator/p/3722408.html Elasticsearc ...
- sql in()批量操作
//批量修改 update 表A set A.name='n' where A.id in(字符串); //批量删除 delete from 表名称 where 列名称 ...
- zTree基本功能[core]
zTree 是一个依靠jQuery实现的多功能"树插件".优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点. zTree v3.0 将核心代码按照功能进行了分割,不需 ...
- BZOJ3456 城市规划 【多项式求逆】
题目链接 BZOJ3456 题解 之前我们用分治\(ntt\)在\(O(nlog^2n)\)的复杂度下做了这题,今天我们使用多项式求逆 设\(f_n\)表示\(n\)个点带标号无向连通图数 设\(g_ ...
- 洛谷 P2414 [NOI2011]阿狸的打字机 解题报告
P2414 [NOI2011]阿狸的打字机 题目背景 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机. 题目描述 打字机上只有28个按键,分别印有26个小写英文字母和'B'.'P'两个字母 ...
- Linux产生背景
By francis_hao Oct 26,2016 很久很久以前,大概在1965年左右,由贝尔实验室(Bell).麻省理工学院(MIT)及通用电气公司(GE)共同发起了一个叫做Multics的项目, ...