学习笔记-POJ-1852蚂蚁问题

来源:互联网 发布:淘宝店铺买家监控软件 编辑:程序博客网 时间:2024/06/03 14:53

Description

一支蚂蚁军队在长度为L厘米的横竿上走,每只蚂蚁的速度恒定,为1厘米/秒。当一只行走的蚂蚁到达模竿终点的时候,它就立即掉了下去;当两只蚂蚁相遇的时候,它们就调头,并开始往相反的方向走。我们知道蚂蚁在模竿上的原来的位置,但不知道蚂蚁行走的方向。请计算所有蚂蚁从模竿上掉下去的最早可能时间和最晚可能的时间。

Input

输入的第1行为样例数。每个样例首先给出2个整数,表示模竿的长度和蚂蚁的数量n。接下来的n个数表示蚂蚁在模竿上的位置(从左开始算起,n<1 000 000)。

Ouput

每个案例输出蚂蚁掉下去的最早时间和最晚时间。

Sample Input

2
10 3
2 6 7
214 7
11 12 7 13 176 23 191

Sample Output

4 8

38 207

import java.util.*;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubScanner cin = new Scanner(System.in);while(cin.hasNext()){//最长时间就是离端点最近的蚂蚁爬到反向端点int T = cin.nextInt();while(T-->0){int m = cin.nextInt();int n = cin.nextInt();int b = 0;int c = 0;int a = 0;for(int i=1;i<=n;i++){a = cin.nextInt();a = Math.max(a, m-a);//每个蚂蚁的最长时间b = Math.max(a, b);//所有蚂蚁中的最长时间c = Math.max(c, m-a);//每只蚂蚁减去最长时间     就是距离最短    后求最大值(所有蚂蚁掉下去)}System.out.println(c+" "+b);}}cin.close();}}


0 0
原创粉丝点击