【模拟】骰子

描述

一个正方体骰子共有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 (s
4) {z=5;y=2;}
if (s2) {z=4;y=3;}
if (s
3) {z=2;y=5;}
if (s5) {z=3;y=4;}
}
else
if (q
2)
{
if (s1) {z=3;y=4;}
if (s
3) {z=6;y=1;}
if (s4) {z=1;y=6;}
if (s
6) {z=4;y=3;}
}
else
if (q3)
{
if (s
1) {z=5;y=2;}
if (s2) {z=1;y=6;}
if (s
5) {z=6;y=1;}
if (s6) {z=2;y=6;}
}
else
if (q
4)
{
if (s1) {z=2;y=5;}
if (s
2) {z=6;y=1;}
if (s5) {z=1;y=6;}
if (s
6) {z=5;y=2;}
}
else
if (q5)
{
if (s
1) {z=4;y=3;}
if (s3) {z=1;y=6;}
if (s
4) {z=6;y=1;}
if (s6) {z=3;y=4;}
}
if (q
6)
{
if (s2) {z=3;y=4;}
if (s
3) {z=5;y=2;}
if (s4) {z=2;y=5;}
if (s
5) {z=4;y=3;}
}
cout<<s<<’ ‘<<x<<’ ‘<<z<<’ ‘<<y<<’ ‘<<q<<’ '<<h<<endl;
}
return 0;
}

发布了65 篇原创文章 · 获赞 0 · 访问量 1322

猜你喜欢

转载自blog.csdn.net/Skynamer/article/details/104025358