UVA-10714 Ants---蚂蚁模拟

Posted 努力努力再努力x

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UVA-10714 Ants---蚂蚁模拟相关的知识,希望对你有一定的参考价值。

题目链接:

https://vjudge.net/problem/UVA-10714

题目大意:

给你一个长为L厘米的木棍在上面有n只蚂蚁,蚂蚁的爬行时间均为1厘米/秒,两只蚂蚁先遇会立即调转方向,调转时间不久,并给出每只蚂蚁的位置x[i],问你所有蚂蚁都掉下木棍的最少时间和最长时间。

思路:

两只蚂蚁掉头和两只蚂蚁擦肩而过是等价的,所以问题就可以简化成所有蚂蚁掉下去的时间,而蚂蚁之间只会擦身而过,互不干扰。

最小时间就是所有蚂蚁掉下的最小时间中的最大值

最大时间就是所有蚂蚁掉下的最大时间中的最大值

 

 1 #include<iostream>
 2 #include<string>
 3 #include<vector>
 4 #include<cstdio>
 5 #include<cstring>
 6 #define FOR(i, a, b) for(int i = a; i < b; i++)
 7 using namespace std;
 8 const int INF = 1e9+7;
 9 int n, T, m;
10 int a[1000005];
11 int main()
12 {
13     cin >> T;
14     while(T--)
15     {
16         cin >> n >> m;
17         for(int i = 0; i < m; i++)cin >> a[i];
18         int ansmin = 0, ansmax = 0;
19         for(int i = 0; i < m; i++)
20         {
21             ansmin = max(ansmin, min(a[i], n - a[i]));
22             ansmax = max(ansmax, max(a[i], n - a[i]));
23         }
24         cout<<ansmin<<" "<<ansmax<<endl;
25     }
26     return 0;
27 }

 

以上是关于UVA-10714 Ants---蚂蚁模拟的主要内容,如果未能解决你的问题,请参考以下文章

Ants POJ - 1852 弹性碰撞+模拟

UVA 10881 - Piotr's Ants模拟+思维

uva 10714

UVa 10881 Piotr's Ants (等价变换)

The 2021 Sichuan Provincial 四川省赛 J - Ants(模拟+技巧)

UVA 10881 Piotr's Ants(模拟)