7.2---蚂蚁相遇问题(CC150)

public class Ants {
    public double antsCollision(int n) {
        // write code here
        return (1 - Math.pow(0.5,n-1));
    }
}
时间: 2024-10-25 08:45:22

7.2---蚂蚁相遇问题(CC150)的相关文章

蚂蚁问题

最近做了几个蚂蚁问题,还蛮有趣的..... 蚂蚁问题第一弹:poj 1852 Ants: Ants Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 12214   Accepted: 5366 Description An army of ants walk on a horizontal pole of length l cm, each with a constant speed of 1 cm/s. When a w

51Nod - 1266 蚂蚁

51Nod - 1266 蚂蚁 n只蚂蚁以每秒1cm的速度在长为Lcm的竿子上爬行.当蚂蚁爬到竿子的端点时就会掉落.由于竿子太细,两只蚂蚁相遇时,它们不能交错通过,只能各自反向爬回去.对于每只蚂蚁,我们知道它距离竿子左端的距离xi,但不知道它当前的朝向.请计算各种情况当中,所有蚂蚁落下竿子所需的最短时间和最长时间. 例如:竿子长10cm,3只蚂蚁位置为2 6 7,最短需要4秒(左.右.右),最长需要8秒(右.右.右). Input 第1行:2个整数N和L,N为蚂蚁的数量,L为杆子的长度(1 <=

UVa 10881 蚂蚁

https://vjudge.net/problem/UVA-10881 题意: 一根长度为L厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为1厘米/秒.当两只蚂蚁相撞时,二者同时掉头.给出每只蚂蚁的初始位置和朝向,计算T秒之后每只蚂蚁的位置. 思路: 首先,如果不考虑掉头的话,蚂蚁相遇时就是对穿而过,如果考虑掉头,局势是不会发生改变的,就是蚂蚁的位置不同. 比如蚂蚁1(2,R),蚂蚁2(4,L),经过3秒后,如果不考虑掉头,那么蚂蚁1(5,R),蚂蚁2(1,L).如果考虑掉头,则

(POJ)1852 --Ants(蚂蚁)

描述蚂蚁的军队在长度lcm的水平杆上行走,每个具有1cm / s的恒定速度.当一个行走的蚂蚁到达杆的一端,它立即掉落.当两只蚂蚁相遇时,他们返回,开始朝着相反的方向走.我们知道蚂蚁在杆子上的原始位置,不幸的是,我们不知道蚂蚁行走的方向.你的任务是计算所有蚂蚁脱离杆子所需的最短和最长的可能时间. 输入第一行输入包含一个整数,给出情况数.每种情况的数据以两个整数开始:杆子的长度(以cm为单位),n是驻杆子上的蚂蚁的数量.这两个数字后跟随n个整数,给出在杆上的每个蚂蚁的位置作为从杆的左端测量的距离,没

poj蚂蚁问题

问题描述: n只蚂蚁以每秒1cm的速度在长为Lcm的竿子上爬行.当蚂蚁爬到竿子的端点时就会掉落.由于竿子太细,两只蚂蚁相遇时,它们不能交错通过,只能各自反向 爬回去.对于每只蚂蚁,我们知道它距离竿子左端的距离xi,但不知道它当前的朝向.请计算各种情况当中,所有蚂蚁落下竿子所需的最短时间和最长时间. 首先是最短时间,论证如下: 对于处于位置xi 处的蚂蚁,它最快掉下去的时间应该是min(xi, L - xi),显然,不管有没碰撞,这一点总是成立的.现在考虑所有的蚂蚁都朝着最近的一端走,此时是不可能

编程之美---蚂蚁爬杆

一根长27cm的木棍上,在5个点上有5只蚂蚁,蚂蚁在开始的时候朝任意方向出发,只能掉头或者往前走.让任意两只蚂蚁碰头时,它们同时掉头朝反方向走.假设蚂蚁的速度都是一秒一厘米,求蚂蚁都离开木棍的最短时间和最长时间. 蚂蚁相遇后掉头往反向走,可以看作蚂蚁相遇后,擦肩而过,相当于两只蚂蚁互换了各自的行程.所以把每只蚂蚁离自己较远的一端,和较近的一端计算出来,分别取最大值,就是最长时间和最短时间. 扩展问题 参考网址 http://blog.csdn.net/weichaohnu/article/det

4.7 蚂蚁爬杆

题目:有一根树枝,树枝很细,不能同时通过两只蚂蚁.开始时,蚂蚁的头朝左还是朝右是任意的,它们只会朝前走或调头,但不会后退. 当两只蚂蚁碰头时,它们会同时调头朝反方向走. 求所有蚂蚁都离开木杆的最短时间和最长时间. 思想:虽然两只蚂蚁相遇后是调头往反方向走,但是,可以"看作"两个蚂蚁相遇后,擦身而过. 也就是说,可以认为蚂蚁的运动是独立的,是否碰头并不是重点. 所以,程序只需要遍历所有的蚂蚁,把每个蚂蚁走出木杆的最长时间(蚂蚁向离自己较远的一端走去),最短时间(蚂蚁向离自己较近的一端走去

[Puzzle] 蚂蚁路线碰撞问题

有这么一道题目, 看下面的图, 假设有一条直线, 每个叉叉上有一只蚂蚁, 它们会随机选择一个方向, 向前或者向后移动, 前进中当两只蚂蚁相遇, 它们会掉头, 问: 全部蚂蚁都走出去的最长和最短步数; 最短步数很明显...只要方向对了, 就是11; 最长呢...在看到问题时脑子里第一个反应是: 没有储存对这类问题的算法, 然后开始模拟蚂蚁行进路线, 发现可能性太多, 简直就是一个分子碰撞大混乱的情形...比如 3向右, 7向左, 11向左, 那样3和7碰撞, 7调头, 会和11碰撞, 然后在调头.

01_蚂蚁感冒(第五届蓝桥预赛本科B组第8题 nyoj 990)

问题来源:第五届蓝桥预赛本科B组第8题 问题描述:有在一条定长(100cm)的直杆上有n(1<n<50)只蚂蚁(每只蚂蚁的起点都不一样),他们都以相同的速度(1cm/s)向左或者向右爬, 当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行. 这些蚂蚁中,有1只蚂蚁感冒了.并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁. 请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒. 问题分析:1.两只蚂蚁碰面时,往相反方向爬行,等价于两只蚂蚁相遇后继续爬行(只不过换了蚂蚁). 2.如果感冒蚂蚁(s

蚂蚁爬杆问题js实现

面外包时,腾讯导师出的面试题,简单记录一下 运行效果 代码 <!DOCTYPE html> <html> <head> <title>蚂蚁爬杆实验</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> </head> <body> <div style=&