洛谷——P2007 魔方
2024-09-23 18:54:06
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 ;
}
最新文章
- EntityFramework、Dapper vs 草根框架性能大比拼,数据库访问哪家强?
- MSSQL数据库链接字符串Asynchronous Processing=true不是异步查询吗,怎么是缓存
- vue 一些开发姿势
- MySQL的分页
- 怎样使用Photoshop CS5的操控变形功能
- Python命名规范
- IE如何兼容placeholder属性
- Eclipse安装ADT插件
- stringstream函数(i o)
- php mysql_insert_id() 获取为空
- Mongodb PHP开发类库
- spring-cloud-config-server——Environment Repository(Git Backend)
- 理解使用static import 机制
- python中的print函数
- 实训三(cocos2dx 3.x 打包apk)
- 20165302 敏捷开发与XP实践作业
- GO_10:GO语言基础之error
- SSM(SpringMVC+Spring+Mybatis)框架学习理解
- java 多线程 day15 CyclicBarrier 路障
- BZOJ 2120 数颜色 【带修改莫队】