P2007 魔方

常神牛家的魔方都是3*3*3的三阶魔方,大家都见过。

模拟即可:

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cstring> using namespace std; string s;
int a[][][];
// 1 2 3 4 5 6
//前、后、左、右、上、下。 void cz1() {
int x=a[][][],y=a[][][],z=a[][][];
for(int i=; i<=; i++) a[][i][]=a[][i][];
for(int i=; i<=; i++) a[][i][]=a[][i][];
for(int i=; i<=; i++) a[][i][]=a[][i][];
a[][][]=x,a[][][]=y,a[][][]=z; int p[][];
for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
p[i][j]=a[][-j+][i];
}
}
for(int i=; i<=; i++)
for(int j=; j<=; j++)
a[][i][j]=p[i][j];
} void cz2() {
int x=a[][][],y=a[][][],z=a[][][];
for(int i=; i<=; i++) a[][i][]=a[][i][];
for(int i=; i<=; i++) a[][i][]=a[][i][];
for(int i=; i<=; i++) a[][i][]=a[][i][];
a[][][]=x,a[][][]=y,a[][][]=z; int p[][];
for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
p[i][j]=a[][j][-i+];
}
}
for(int i=; i<=; i++)
for(int j=; j<=; j++)
a[][i][j]=p[i][j];
} void cz3(){
int x=a[][][],y=a[][][],z=a[][][];
for(int i=; i<=; i++) a[][][i]=a[][][i];
for(int i=; i<=; i++) a[][][i]=a[][][i];
for(int i=; i<=; i++) a[][][i]=a[][][i];
a[][][]=x,a[][][]=y,a[][][]=z; int p[][];
for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
p[i][j]=a[][-j+][i];
}
}
for(int i=; i<=; i++)
for(int j=; j<=; j++)
a[][i][j]=p[i][j];
} void cz4(){
int x=a[][][],y=a[][][],z=a[][][];
for(int i=; i<=; i++) a[][][i]=a[][][i];
for(int i=; i<=; i++) a[][][i]=a[][][i];
for(int i=; i<=; i++) a[][][i]=a[][][i];
a[][][]=x,a[][][]=y,a[][][]=z; int p[][];
for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
p[i][j]=a[][j][-i+];
}
}
for(int i=; i<=; i++)
for(int j=; j<=; j++)
a[][i][j]=p[i][j];
} void print()
{
puts("xxxxxxxxxxxxxxxxxxxxxxx\n");
for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
for(int k=; k<=; k++) {
printf("%d",a[i][j][k]);
}
puts("");
}
}
} int main() {
cin>>s;
for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
for(int k=; k<=; k++)
scanf("%1d",&a[i][j][k]);
}
} int l=s.length();
for(int i=; i<l; i++) {
if(s[i]=='') cz1();
else if(s[i]=='') cz2();
else if(s[i]=='') cz3();
else cz4();
// print();
} for(int i=; i<=; i++) {
for(int j=; j<=; j++) {
for(int k=; k<=; k++) {
printf("%d",a[i][j][k]);
}
puts("");
}
}
return ;
}

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

  1. AC日记——魔方 洛谷 P2007

    魔方 思路: 模拟: 代码: #include <cstdio> #include <cstring> #include <iostream> #include & ...

  2. P2007 魔方

    洛谷——P2007 魔方 题目背景 常神牛从来没接触过魔方,所以他要借助计算机来玩.即使是这样,他还是很菜. 题目描述 常神牛家的魔方都是3*3*3的三阶魔方,大家都见过. (更正:3 4以图为准.) ...

  3. [洛谷P2730] 魔板 Magic Squares

    洛谷题目链接:魔板 题目背景 在成功地发明了魔方之后,鲁比克先生发明了它的二维版本,称作魔板.这是一张有8个大小相同的格子的魔板: 1 2 3 4 8 7 6 5 题目描述 我们知道魔板的每一个方格都 ...

  4. 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...

  5. 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.

    没有上司的舞会  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond       题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...

  6. 洛谷P1108 低价购买[DP | LIS方案数]

    题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则.要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买:再低价购买”.每次你购买一支股票,你必须用低于你上次购买它的价格购买它 ...

  7. 洛谷 P2701 [USACO5.3]巨大的牛棚Big Barn Label:二维数组前缀和 你够了 这次我用DP

    题目背景 (USACO 5.3.4) 题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚.他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方.我们假定,他的农场划分成 N ...

  8. 洛谷P1710 地铁涨价

    P1710 地铁涨价 51通过 339提交 题目提供者洛谷OnlineJudge 标签O2优化云端评测2 难度提高+/省选- 提交  讨论  题解 最新讨论 求教:为什么只有40分 数组大小一定要开够 ...

  9. 洛谷P1371 NOI元丹

    P1371 NOI元丹 71通过 394提交 题目提供者洛谷OnlineJudge 标签云端评测 难度普及/提高- 提交  讨论  题解 最新讨论 我觉得不需要讨论O long long 不够 没有取 ...

随机推荐

  1. node.js 在函数内获取当前函数

    js 如何在函数体内部知道 自己在哪个函数内运行呢? 打比方: function a() { // 我想在这里知道我的函数名a和函数function a () {...} } 使用Error的调用栈可 ...

  2. python js

    js = 'var a=document.getElementsByClassName("user-data-right")[0];a.target="_self&quo ...

  3. Interval 计时器

    语法: setInterval(代码,交互时间); 在执行时,从载入页面后每隔指定的时间执行代码. clearInterval( setInterval() 返回的 ID 值 ): 取消计时器 < ...

  4. POJ 2260:Error Correction

    Error Correction Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6014   Accepted: 3886 ...

  5. window安装Elasticsearch

    下载,https://www.elastic.co/cn/downloads/elasticsearch 下载后解压,进入解压目录,运行./elasticsearch.bat 运行成功如下 (运行需要 ...

  6. 第六周 Leetcode 446. Arithmetic Slices II - Subsequence (HARD)

    Leetcode443 题意:给一个长度1000内的整数数列,求有多少个等差的子数列. 如 [2,4,6,8,10]有7个等差子数列. 想了一个O(n^2logn)的DP算法 DP[i][j]为 对于 ...

  7. 深入理解JMM(Java内存模型) --(三)顺序一致性

    数据竞争与顺序一致性保证 当程序未正确同步时,就会存在数据竞争.Java内存模型规范对数据竞争的定义如下: 在一个线程中写一个变量, 在另一个线程读同一个变量, 而且写和读没有通过同步来排序. 当代码 ...

  8. IDEA中Spark读Hbase中的数据

    import org.apache.hadoop.hbase.HBaseConfiguration import org.apache.hadoop.hbase.io.ImmutableBytesWr ...

  9. IDEA中项目src目录下无法创建java文件的问题

    出现的问题如下,是因为该目录不是源码目录 解决办法 设置成功

  10. 清北考前刷题day5早安

    /* C(n,k) */ #include<iostream> #include<cstdio> #include<cstring> #define ll long ...