宇航员
Time Limit: 2000MS Memory Limit: 30000K
Total Submissions: 8900 Accepted: 3629

Description

问题描述:
  宇航员在太空中迷失了方向,在他的起始位置现在建立一个虚拟xyz坐标系,称为绝对坐标系,宇航员正面的方向为x轴正方向,头顶方向为z轴正方向,则宇航员的初始状态如下图所示:

现对六个方向分别标号,x,y,z正方向分别为0,1,2,负方向分别为3,4,5;称它们为绝对方向。宇航员在宇宙中只沿着与绝对坐标系xyz轴平行的方向行走,但是他不知道自己当前绝对坐标和自己面向的绝对方向。

任务描述:
  请根据宇航员对自己在相对方向上移动的描述确定宇航员最终的绝对坐标和面向的绝对方向。对在相对方向上移动的描述及意义如下:
forward x  向前走x米。
back x 先转向后,再走x米。
left x 先转向左,再走x米。
right x 先转向右,再走x米。
up x 先面向上,再走x米。
down x 先面向下,再走x米。
其中向上和向下如下图所示:

Input

第一行一个正整数m,表示测试数据的组数。每组测试数据第一行是一个正整数n(1<=n<=10000)表示宇航员行走的次数,下面n行每行输入一次相对行走,格式如上所述,其中( 1 <= x <= 10000 为正整数)。

Output

对于每组输入数据输出一行,x y z p, 中间用空格隔开,x y z是宇航员的位置的绝对坐标,p是宇航员面向的绝对方向编号(0<=p <=5)。

Sample Input

1
6
left 10
right 11
up 12
down 13
forward 14
back 15

Sample Output

23 -10 12 3

Source

qinlu@POJ

问题链接:Bailian1835 POJ1835 宇航员
问题简述:(略)
问题分析:模拟问题,不解释。
程序说明:(略)
参考链接:(略)
题记:(略)

AC的C++语言程序如下:

/* Bailian1835 POJ1835 宇航员 */#include <iostream>
#include <cstdio>
#include <cstring>using namespace std;const char *dir[] = {"forward", "back", "left", "right", "up", "down"};
char d[10];int main()
{int m, n, mov;scanf("%d", &m);while (m--) {scanf("%d", &n);int f = 0, fr = 1, h = 2, x = 0, y = 0, z = 0;while (n--) {scanf("%s%d", d, &mov);if (strcmp(d, dir[1]) == 0)     // backf = (f + 3) % 6, fr = (fr + 3) % 6;else if (strcmp(d, dir[2]) == 0) {        // leftint tmp = f;f = (fr + 3) % 6;fr = tmp;} else if (strcmp(d, dir[3]) == 0) {        // rightint tmp = f;f = fr;fr = (tmp + 3) % 6;} else if (strcmp(d, dir[4]) == 0) {        // upint tmp = f;f = h;h = (tmp + 3) % 6;} else if (strcmp(d, dir[5]) == 0) {        // downint tmp = f;f = (h + 3) % 6;h = tmp;}if (f == 0) x += mov;else if (f == 1) y += mov;else if (f == 2) z += mov;else if (f == 3) x -= mov;else if (f == 4) y -= mov;else z -= mov;}printf("%d %d %d %d\n", x, y, z, f);}return 0;
}

Bailian1835 POJ1835 宇航员【模拟】相关推荐

  1. ACM训练计划建议(转)

    ACM训练计划建议 From:freecode#  Date:2015/5/20 前言: 老师要我们整理一份训练计划给下一届的学弟学妹们,整理出来了,费了不少笔墨,就也将它放到博客园上供大家参考. 菜 ...

  2. 【火爆】微软的Holographic会给我们带来什么?Imagine porn with this...

    2015年1月22日凌晨,微软正式发布Windows10,打通移动.桌面.XBOX,提供免费Office.提供免费升级.集成新的浏览器都算是靓点.但是真正令整个世界惊叹却是微软展示的全息影像技术Win ...

  3. 电脑屏保海底世界_水下栖息地:人类能否在海洋中居住?真的有人住在海底吗?...

    慧缘开运讲坛:真的有人住在海底吗?对于这个问题,你肯定首先会想到美人鱼,对于未知的事物,我们并没有证据证明它们的存在. 人类如何居住海底呢?那首先需要一个密闭的生态环境供进入海底的人生活.我们可以称之 ...

  4. 百练OJ:1835:宇航员

    题目链接:1835:宇航员 描述 问题描述: 宇航员在太空中迷失了方向,在他的起始位置现在建立一个虚拟xyz坐标系,称为绝对坐标系,宇航员正面的方向为x轴正方向,头顶方向为z轴正方向,则宇航员的初始状 ...

  5. 对话NASA传奇宇航员:太空中不止有未知与神秘,还有下午茶和电影

    当你仰望一颗遥远的星辰,它的光芒来自千百年之前:当你追随旅行者1号走出地外100亿公里,这是宇宙的咫尺:当你感受太阳的温暖,这颗美丽的恒星的能量与已知最大的恒星相比,甚至可以忽略不计. 德国哲学家康德 ...

  6. 模拟生态圈_揭秘美国造价16亿的火星模拟生物圈,曾进行过2年的密封生存实验...

    1991年9月,石油大亨埃德巴斯花了大约2.5亿美元(约16亿元人民币)建造了一个火星模拟生物圈,将4名男子和4名女子密封在里面进行实验,以此验证在火星建造人类永久栖息地的设想,实验持续了2年时间. ...

  7. 小航编程题库蓝桥杯stem科技素养模拟练习试卷(中级第1套)(含题库教师学生账号)

    需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSDN博客 1. 生活中常见的汽车.自行车等轮式车辆的刹车通常都是利用( )进行刹车 的. A ...

  8. 计算机氧气游戏,外媒分享空间模拟新作《氧气不足》游戏体验

    <饥荒>开发商Klei Entertainment开发了新作--空间殖民模拟游戏<氧气不足(Oxygen Not Included)>,外媒在实机体验过后为我们带来了有关该作的 ...

  9. windowsserver2008r2可以装什么模拟器_无论什么都能模拟?各式各样的模拟器挑战人类极限!...

    最近wegame上出现了一款"做手机"的模拟游戏广告. 现在的玩家都已经闲到在电脑上做手机了么? 那下次干脆模拟电脑厂商好了...... 还别说,姬虽然没有找到电脑厂商模拟器,却找 ...

最新文章

  1. Spring Boot由jar包转成war包
  2. python语言的解释性特点指的是编写的程序不需要编译_解释性与编译型 Python2和python3的区别...
  3. Web前端工程师求职的失败——评《非你莫属》20120909期宋龙龙片段
  4. 手把手教你报表工具PentahoBI安装和简单使用
  5. arduino i2c 如何写16位寄存器_Arduino之我见
  6. P4338-[ZJOI2018]历史【LCT】
  7. python中__init__函数以及参数self
  8. MSP430杂谈--AD7745硬件IIC驱动与模拟IIC驱动
  9. 变量的语法扩展(JS)
  10. 任意阶幻方解法及c++实现
  11. scala几种循环判断语句_Scala循环控制语句– while,while和for循环
  12. 是时候拥有一个你自己的命令行工具了
  13. html文件设置成mac屏保,如何将视频设置为Mac上的屏幕保护程序 | MOS86
  14. 今日头条给我发工资744.53元 坚持原创终于有了回报
  15. 【数学】高昆轮高数下强化
  16. 2021年危险化学品经营单位主要负责人考试试卷及危险化学品经营单位主要负责人模拟考试
  17. IE7下li Bug
  18. golang安装新的模块
  19. 高斯混合模型与EM算法求解
  20. Easypoi excel导入时日期校验

热门文章

  1. lamda获取参数集合去空_lambda表达式对集合的遍历
  2. GDAL源码剖析(十二)之GDAL Warp API使用说明
  3. 战神背光键盘如何关系_神舟战神K660E-i7D8红色背光键盘,深夜战火不熄!
  4. [ANE for Android]Java接口部分引用第三方JAR的解决办法
  5. io vivado 怎么查看ps_vivado学习之PS与PL通信
  6. mysql jdbc配置重连_Spring Boot 配置MySQL数据库重连的操作方法
  7. android timepicker分割线颜色,Android修改DatePicker字体颜色及分割线颜色详细介绍
  8. java怎么连不上xml_java mvc web 项目web.xml头改错了,死活加载不上springMvc的jar
  9. Impala的操作命令之 内外shell
  10. MySQL的sql_mode解析设置