描述
一个正方体骰子共有6个面,标上1、2、3、4、5、6共6个数字,其中1的对面为6,2的对面为5,3的对面为4。各个面之间的关系如图所示:
现在我们扔出骰子,只允许你观察面朝上和面向你的两个面,你能否告诉我们所有面值呢?
如图中,上面和前面是4和1时,右面是2,后面是6,左面是5,下面是3。
输入
输入数据有多组,每组占一行,每行有两个整数,表示面朝上和面向你的两个面值。
输出
每组输出6个数,即上、下、左、右、前、后各个面的值。
其中前指的是面向你的面
样例输入
4 1
样例输出
4 3 5 2 1 6
题目来源
TZOJ
分析:
练习一下空间想象能力。
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
//cin>>n>>m;
int s,x,z,y,q,h;
while(cin>>n>>m)
{
s=n;
q=m;
h=7-m;
x=7-n;
if (q1)
{
if (s4) {z=5;y=2;}
if (s2) {z=4;y=3;}
if (s3) {z=2;y=5;}
if (s5) {z=3;y=4;}
}
else
if (q2)
{
if (s1) {z=3;y=4;}
if (s3) {z=6;y=1;}
if (s4) {z=1;y=6;}
if (s6) {z=4;y=3;}
}
else
if (q3)
{
if (s1) {z=5;y=2;}
if (s2) {z=1;y=6;}
if (s5) {z=6;y=1;}
if (s6) {z=2;y=6;}
}
else
if (q4)
{
if (s1) {z=2;y=5;}
if (s2) {z=6;y=1;}
if (s5) {z=1;y=6;}
if (s6) {z=5;y=2;}
}
else
if (q5)
{
if (s1) {z=4;y=3;}
if (s3) {z=1;y=6;}
if (s4) {z=6;y=1;}
if (s6) {z=3;y=4;}
}
if (q6)
{
if (s2) {z=3;y=4;}
if (s3) {z=5;y=2;}
if (s4) {z=2;y=5;}
if (s5) {z=4;y=3;}
}
cout<<s<<’ ‘<<x<<’ ‘<<z<<’ ‘<<y<<’ ‘<<q<<’ '<<h<<endl;
}
return 0;
}