ZZULIOJ-1070,小汽车的位置(Java)

简介: ZZULIOJ-1070,小汽车的位置(Java)

题目描述:


有一辆智能小车,最初(时间为0)的位置为(0,0),我们想知道它最后的位置。小车以每小时10公里的速度向北移动(以北为y轴正向,以东为x轴正向)。小车会受到一系列依照时间戳记排序的命令,1表示“向左转”,2表示“向右转”,3表“停止”。每个命令的前面有一个时间戳记,所以我们知道该命令是何时发出的。最后一个命令一定是“停止”。我们另外假设,这辆小车非常灵活,它可以在瞬间转弯。

以下列输入为例。小车在时间为5的时候收到一个“向左转”的命令1,在时间10收到一个“向右转”的命令2,在时间15收到一个“停止”的命令3。那么在最后时间15的时候,小车的位置将在(-50,100)。程序只要求输出小车最后的位置,第一个整数是x坐标,第二个整数是y坐标。  


输入:


输入包含多个命令,每个命令由整数time和command组成,表示在时刻time发出命令command。command的取值范围1-3,含义如上所述。  


输出:


输出占一行,包含两个整数,表示小车的最终位置。两个整数之间由空格隔开。  


样例输入:


5

1

10

2

15

3


样例输出:


-50 100


提示1:可为四个方向编号,自向北开始,逆时针将4个方向依次编号为0,1,2,3。当接到向左转命令,方向号增1,向右转则方向号减1。为避免出现负数或大于3的情况,可对4取模。


程序代码:


import java.util.*;
public class Main
{
  public static void main(String[] args)
  {
    Scanner input=new Scanner(System.in);
    int x,y,n,c,a,b;
    x=y=n=c=0;
    while(input.hasNextInt())//Java语言的多实例测试数据输入
    {
      a=input.nextInt();
      b=input.nextInt();
      switch(n)
      {
        case 0:y+=(a-c)*10;break;
        case 1:x-=(a-c)*10;break;
        case 2:y-=(a-c)*10;break;
        case 3:x+=(a-c)*10;break;
      }
      if(b==3)
        break;
      else if(b==1)
        n++;
      else
        n--;
      n=(n+4)%4;
      c=a;
    }
    System.out.printf("%d %d\n",x,y);
  }
}


相关文章
|
4天前
|
Java 数据库 Android开发
汽车出租系统【纯控制台】(Java课设)
汽车出租系统【纯控制台】(Java课设)
17 1
|
4天前
|
安全 Java 数据库连接
【Java每日一题】——第二十八题:编程定义一个学生类汽车类Car
【Java每日一题】——第二十八题:编程定义一个学生类汽车类Car
59 0
|
4天前
|
NoSQL Java 关系型数据库
基于java swing和mysql实现的汽车租赁管理系统(源码+数据库+文档+运行指导视频)
基于java swing和mysql实现的汽车租赁管理系统(源码+数据库+文档+运行指导视频)
|
4天前
|
JavaScript Java 测试技术
基于Java的汽车客运订票系统 的设计与实现(源码+lw+部署文档+讲解等)
基于Java的汽车客运订票系统 的设计与实现(源码+lw+部署文档+讲解等)
28 2
|
7月前
|
SQL Java 数据库
JSP汽车销售管理系统myeclipse开发sql计算机程序web结构java编程网页源码
JSP 汽车销售管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发
50 0
|
9月前
|
前端开发 Java 数据库连接
JAVA汽车租赁系统(JAVA毕业设计)
JAVA汽车租赁系统(JAVA毕业设计)
82 0
|
12月前
|
算法 Java 数据库
Java+MySQL汽车租赁管理系统课程设计
1、综合运用Java程序设计课程和其他相关课程的理论和知识,掌握面向对象程序设计的一般方法、常用技术及技巧,树立良好的软件设计思想,培养分析问题和解决实际问题的能力; 2、学会从OOP程序设计的方法及要求出发,认真分析题目,做好总体设计,根据要求科学地设计包、类、接口等,正确设计算法,合理安排界面,规范开发过程,仔细调试程序,做好设计总结; 3、充分利用互联网资源,提高学生获取知识,实践知识的能力。
164 0
|
存储 前端开发 Java
Demo:第二章:Java实现随机图像生成(人像,汽车,房屋等等
Demo:第二章:Java实现随机图像生成(人像,汽车,房屋等等
210 0
Demo:第二章:Java实现随机图像生成(人像,汽车,房屋等等
|
Java 测试技术
pat1033汽车加油问题(Java贪心)
这题就是说汽车开始0油,然后给出总路程,每公里汽车能够跑的路程,测试用例数量, 每个测试用例给出价钱和距离。这题刚开始没有思路,以前见过没有思路后来绕过去没想到在pat上又遇到了,看了题解后来恍然大悟,这个贪心技巧以前没有见过。
120 0
|
Java
22、Java——汽车租赁系统(对象+集合)
22、Java——汽车租赁系统(对象+集合)
373 0
22、Java——汽车租赁系统(对象+集合)