zoj--Ants
2015-09-14 22:08
267 查看
Ants
Time Limit: 2 Seconds
Memory Limit: 65536 KB
An army of ants walk on a horizontal pole of length l cm, each with a constant speed of 1 cm/s. When a walking ant reaches an end of the pole, it immediatelly falls off it. When two ants meet they turn back and start walking
in opposite directions. We know the original positions of ants on the pole, unfortunately, we do not know the directions in which the ants are walking. Your task is to compute the earliest and the latest possible times needed for all ants to fall off the pole.
Input
The first line of input contains one integer giving the number of cases that follow. The data for each case start with two integer numbers: the length of the pole (in cm) and n, the number of ants residing on the pole. These
two numbers are followed by n integers giving the position of each ant on the pole as the distance measured from the left end of the pole, in no particular order. All input integers are not bigger than 1000000 and they are separated by whitespace.
Output
For each case of input, output two numbers separated by a single space. The first number is the earliest possible time when all ants fall off the pole (if the directions of their walks are chosen appropriately) and the second
number is the latest possible such time.
Sample Input
2
10 3
2 6 7
214 7
11 12 7 13 176 23 191
Sample Output
4 8
38 207
关键思想:两只蚂蚁相遇后,可以看成保持原样擦肩而过,继续前行,当然dfs也可以,但太费时了。
代码如下:
Time Limit: 2 Seconds
Memory Limit: 65536 KB
An army of ants walk on a horizontal pole of length l cm, each with a constant speed of 1 cm/s. When a walking ant reaches an end of the pole, it immediatelly falls off it. When two ants meet they turn back and start walking
in opposite directions. We know the original positions of ants on the pole, unfortunately, we do not know the directions in which the ants are walking. Your task is to compute the earliest and the latest possible times needed for all ants to fall off the pole.
Input
The first line of input contains one integer giving the number of cases that follow. The data for each case start with two integer numbers: the length of the pole (in cm) and n, the number of ants residing on the pole. These
two numbers are followed by n integers giving the position of each ant on the pole as the distance measured from the left end of the pole, in no particular order. All input integers are not bigger than 1000000 and they are separated by whitespace.
Output
For each case of input, output two numbers separated by a single space. The first number is the earliest possible time when all ants fall off the pole (if the directions of their walks are chosen appropriately) and the second
number is the latest possible such time.
Sample Input
2
10 3
2 6 7
214 7
11 12 7 13 176 23 191
Sample Output
4 8
38 207
关键思想:两只蚂蚁相遇后,可以看成保持原样擦肩而过,继续前行,当然dfs也可以,但太费时了。
代码如下:
#include<stdio.h> int main() { int n,m; int t; scanf("%d",&t); while(t--) { int k=0; int d; int s1,s2; int max1,max2; max1=0; max2=0; scanf("%d%d",&n,&m); for(int i=0;i<m;i++) { scanf("%d",&d); s1=d<n-d?d:n-d; s2=d>n-d?d:n-d; if(max1<s1)max1=s1; // if(min<a[i])min=a[i]; // max=(max>a[i])?(max>n-a[i]?max:n-a[i]):(a[i]>n-a[i]?a[i]:n-a[i]); if(max2<s2)max2=s2; } printf("%d %d\n",max1,max2); } return 0; }
相关文章推荐
- mongoDB 入门指南、示例
- cocos植物大战僵尸(六)已选植物卡片管理器类
- mmorpg游戏设计之2D游戏地图的九宫格子
- iOS开发中的使用kvc快速将字典模型转换成model模型。
- codeforces 2B B. The least round way(dp+数论)
- 停止animate动画和判断是否处于动画状态
- 条款23:宁一 non-member no-friend 替换member函数(prefer non-member non-friend functions to members functions)
- 内存考点
- Android网络连接——ConnectivityManager、WebView
- Apache Camel异常处理
- ZigZag - 曲折字符串
- 2015.9.14
- 《Java编程思想》读书笔记2.一切都是对象
- 0912Android基础网络技术之Http协议访问网络
- Fiddler无法正常对360浏览器、谷歌浏览器抓包的原因及处理方法
- Struts2中dispatcher与redirect的区别
- 重置win7系统
- XHTML表单
- 使用RMAN来克隆数据库
- python简单爬虫(二)