2017华为机试题--投骰子问题

来源:互联网 发布:淘宝新店0销量 编辑:程序博客网 时间:2024/05/18 03:55

题目描述:骰子是一个立方体,每个面一个数字,初始为左1,右2,前3(观察者方向),后4,上5,下6,用123456表示这个状态,放置到平面上,可以向左翻转(用L表示向左翻转1次),可以向右翻转(用R表示向右翻转1次),可以向前翻转(用F表示向前翻转1次),可以向后翻转(用B表示向右翻转1次),可以逆时针旋转(用A表示逆时针旋转90度),可以顺时针旋转(用C表示逆时针旋转90度),现从初始状态开始,根据输入的动作序列,计算得到最终的状态。

输入描述:

初始状态为:123456

输入只包含LRFBAC的字母序列,最大长度为50,可重复

输出描述:输出最终状态

输入例子:RA

输出例子:436512

代码如下:

import java.util.*;public class Dice {public static int l = 1, r = 2, f = 3, b = 4, u = 5, d = 6;public static void handle(char cmd) {if (cmd == 'C') {//Rint cpl = l;l = f;f = r;r = b;b = cpl;} else if (cmd == 'A') {//Lint cpr = r;r = f;f = l;l = b;b = cpr;} else if (cmd == 'F') {int cpf = f;f = u;u = b;b = d;d = cpf;} else if (cmd == 'B') {int cpb = b;b = u;u = f;f = d;d = cpb;} else if (cmd == 'R') {//Aint cpu = u;u = l;l = d;d = r;r = cpu;} else if (cmd == 'L') {//Cint cpu = u;u = r;r = d;d = l;l = cpu;}}public static void main(String[] args) {Scanner scan = new Scanner(System.in);String strs = scan.nextLine();scan.close();for (int i = 0; i < strs.length(); i++)handle(strs.charAt(i));System.out.println("" + l + r + f + b + u + d);}}


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 郑万350渝万怎么办 厂里饭堂的饭好难吃怎么办 学校的食堂饭菜不好不卫生怎么办 亲戚借钱我真没有怎么办 榴莲肉酸了吃了怎么办 亲戚赖在家里住怎么办 食堂饭菜味道差该怎么办 被监视居住公安打电话睡着了怎么办 鱼缺氧浮上水面怎么办 车载低音炮有电流声怎么办 925纯银变黑了怎么办 银子放久了变黑怎么办 高铁票网上售空怎么办 高铁票出票失败怎么办 高铁票名字打错怎么办 高铁票姓名错了怎么办 高铁票弄丢了怎么办 用过的车票丢了怎么办 高铁票被水洗了怎么办 沈阳地铁卡丢了怎么办 火车票没写检票口怎么办 吃鸡听的脚步声距离太近怎么办 检票时车票丢了怎么办 高铁出站没检票怎么办 高铁来不及取票怎么办 被发现假的增值税发票怎么办 高铁票身份证验证失败怎么办 网上订的火车票查不到怎么办 已经参加工作想学个本科证怎么办 火车晚点耽误下一趟列车怎么办 门外装监控没有预留电线怎么办 框架柱主筋柱顶预留长度不够怎么办 遇到很嚣张的人怎么办 在地板砖上铺木地板卧室门怎么办 宝宝打预防针的本子丢了怎么办 宝宝打预防针本子丢了怎么办 打疫苗的本子丢了怎么办 麦客收割机麦秸里加麦粒怎么办 高铁乘务员身高不够怎么办 坐火车买到站票怎么办 买上车补票原票怎么办?