思路:

直接按照题意模拟,感觉没什么太好的办法。另外注意:int这种基础数据类型不能用equals这个方法 ,必须是Integer类型

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int L = sc.nextInt();
int t = sc.nextInt();
int timeCount = 0; //计时器
Ball [] ball = new Ball[n];
for (int i = 0; i < n; i++)
ball[i] = new Ball(sc.nextInt(), 1);
while (++timeCount <= t) {
for (int i = 0; i < n; i++) {//到达端点则反向
if(ball[i].direction == 1) {
ball[i].position++;
if(ball[i].position == L)
ball[i].direction *= -1; //使球反向
} else {
ball[i].position--;
if(ball[i].position == 0)
ball[i].direction *= -1;
}
}
for (int i = 0; i < n - 1; i++) //判断相撞
for (int j = i + 1; j < n; j++)
if (ball[i].position.equals(ball[j].position)) {
ball[i].direction *= -1;
ball[j].direction *= -1;
break;
}
}
sc.close();
for(int i = 0; i < n; i ++) { //输出结果
System.out.print(ball[i].position + " ");
}
}
}
class Ball {
public Integer position; //球的位置
public Integer direction; //球的方向,1为向右,-1为向左
public Ball(Integer position, Integer direction) {
this.position = position;
this.direction = direction;
}
}

201803-2 碰撞的小球 Java的更多相关文章

  1. CCF认证201803-2 碰撞的小球 java代码实现。

    问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒. 当小球到达线 ...

  2. 【web前端学习部落22群】分享 碰撞的小球开源小案例

    对于课程中的疑问,大家可以加 web前端学习部落22群 120342833和其他老师还有众多的小伙伴们进行沟通交流哦,群里还有不少技术大拿.行业大牛 可以一起探讨问题,我们也会安排专业的技术老师为大家 ...

  3. 碰撞的小球 ccf (模拟)

    问题描述 试题编号: 201803-2 试题名称: 碰撞的小球 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐 ...

  4. 【C++】CCFCSP201803-2碰撞的小球

    // // main.cpp // CCFCSP20180318_2_碰撞的小球 // // Created by T.P on 2018/3/24. // Copyright © 2018年 T.P ...

  5. CCF CSP 201803-2 碰撞的小球

    题目链接:http://118.190.20.162/view.page?gpid=T72 问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段 ...

  6. CCF-201803-2 碰撞的小球

    问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒.当小球到达线段 ...

  7. ccf 201803-2 碰撞的小球(Python)

    问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒. 当小球到达线 ...

  8. CCF|碰撞的小球

    import java.util.Scanner; public class Main { public static void main (String[] args) { Scanner scan ...

  9. ZJNU 1422 - 碰撞的小球

    完全弹性碰撞可以视作互相穿过 所以直接考虑只有单个小球的时候,从板子上滑下所需要的时间即可 最后以30000为界分开流读入与缓冲区优化的io方法 //Case4用缓冲区io优化会WA??? /* Wr ...

随机推荐

  1. vSphere 高级特性FT配置与管理

    内容预览: 1. Fault Tolerance 的工作方式 2. 5.X版本FT使用的vLockstep技术 3. 6.X版本FT使用的Fast Checkpointing技术 4. FT不支持的v ...

  2. 我的Grunt之旅-初识gruntfile文件

    时间:2018-03-06 18:23  事件:配置 gruntfile.js文件 首先,回忆一下之前的点,grunt项目下面必须有两个文件  ,第一个  package.json ,第二个  Gru ...

  3. loadBeanDefinitions方法源码跟踪(二)

    因为字数超过了限制,所以分成了三篇,承接上篇: https://www.jianshu.com/p/a0cfaedf3fc5 代码过宽,可以shift + 鼠标滚轮 左右滑动查看 3.parseDef ...

  4. java 接口 2.19

    接口中所有的方法都是抽象的和public的,所有的属性都是public,static,final的.

  5. Metasploit学习笔记——网络服务渗透攻击

    1.内存攻防技术 1.1缓冲区溢出漏洞机理 1.2栈溢出利用机理 1.3缓冲区溢出利用的限制条件 2.网络服务渗透攻击面 3. Windows服务渗透攻击实战案例——MS08-067安全漏洞 示例代码 ...

  6. 06.swoole学习笔记--异步tcp服务器

    <?php //创建tcp服务器 $host='0.0.0.0'; $port=; $serv=new swoole_server($host,$port); //设置异步进程工作数 $serv ...

  7. php phar反序列化任意执行代码

    2018年 原理一.关于流包装stream wrapper大多数的文件操作允许使用各种URL协议去访问文件路径,如data://,zlib://,php://例如常见的有include('php:// ...

  8. Linq----------if使用

    static void Main(string[] args) { "; "; var processid = "c8b79051249940acbeca5dd951d2 ...

  9. B. RGB plants

    B. RGB plants time limit per test 2.0 s memory limit per test 64 MB input standard input output stan ...

  10. UVALive - 7752 Free Figurines

    题意:有n个娃娃,如果大娃娃j直接套小娃娃i,则fa[i] = j.若fa[i] = 0,则该娃娃自由.给出每个娃娃初始的父亲,和改变后的父亲,在满足以下合法操作的条件下,问最少需要多少次变换. 1. ...