三个农夫问题
来源:互联网 发布:尚趣玩网络 编辑:程序博客网 时间:2024/05/27 21:13
#include <cstdio>#include <algorithm>using namespace std;struct mike{ int startTime; int endTime;}people[5001];struct Rule{ bool operator ()(const mike &p1,const mike &p2){ if (p1.startTime == p2.startTime)return p1.endTime < p2.endTime; return p1.startTime < p2.startTime; }};int main(){ int n; scanf("%d",&n); int i; for (i = 0;i < n;i ++) scanf("%d %d",&people[i].startTime,&people[i].endTime); sort (people,people+n,Rule()); int maxTimeHV = 0; int maxTimeNO = 0; int start,ennnd; int sssss,eeeee; int time,timeNO; int flag = 0;// flag == 0 表示断掉了 反之没有断 for (i = 1;i < n;i ++){ if (people[i].startTime<=people[i-1].endTime){ if (0 == flag){ start = people[i-1].startTime; ennnd = max(people[i].endTime,people[i-1].endTime); } else { ennnd = max(ennnd,people[i].endTime); } time = ennnd - start; if (maxTimeHV < time) maxTimeHV = time; flag = 1; } else { if (1 == flag) sssss = people[i-1].endTime; eeeee = people[i].startTime; timeNO = eeeee - sssss; if (maxTimeNO < timeNO) maxTimeNO = timeNO; flag = 0; } } printf("%d %d\n",maxTimeHV,maxTimeNO); return 0;}
https://www.cnblogs.com/candy99/p/5791511.html
有时间看看大神的
阅读全文
0 0
- 三个农夫问题
- 农夫养牛de 问题
- 农夫养牛问题
- 农夫过河问题实现
- 农夫过河问题
- 农夫养牛问题
- 农夫养牛问题
- 农夫过河问题
- 农夫过河问题
- 【人工智能】农夫过河问题
- 农夫过河问题
- 农夫打渔问题
- 经典的农夫养牛问题
- 经典的农夫养牛问题
- 农夫问题--状态空间搜索
- 经典的农夫养牛问题
- 农夫、狼、羊过河问题
- 农夫过河问题的求解
- Java的三个方向命名规范以及在微软WINDOWS下环境变量的配置技巧。
- vue文档组件篇杂项阅读
- hdu 5085 Counting problem (分块+二进制优化下hash链表)
- [线段树]「CodePlus 2017 11 月赛」Yazid 的新生舞会
- 我与这个时代01
- 三个农夫问题
- ArrayList list = new ArrayList(20);中的list扩充几次,笔试题
- python基础语法学习记录
- 堆排序--小根堆的建立与调整
- 【mac】vmware tools 在菜单上显示灰色无法安装的问题
- MySQL的基本使用-2
- Java泛型分析
- C++11中std::lock_guard的使用
- 51单片机的代码存储问题