7.6 EPOJ 1700Crossing River
来源:互联网 发布:苹果软件破解版 编辑:程序博客网 时间:2024/05/17 02:41
题意:
给一艘能载2人的船,n个人过河,给出每个人开船过河时间,2人开船取2人中最短的时间。求所有人过河所需最短时间。
思路:
感觉是贪心,但是怎么贪心又很不好想。最后发现当需要过河的人大于三人时,将最慢的两个人运到对岸都有这样的套路,
1.最快的和次快的前去,最快的回,次慢的和最慢的过去,次快的回。
2.最快和最慢前去,最快和次慢前去,最快回。
代码:
#include <iostream>#include <cstring>#include <algorithm>using namespace std;int sp[1000];int main(){ ios::sync_with_stdio(0); int T; cin>>T; while(T--){ int n,m; cin>>n; m=n-1; for(int i=0;i<n;i++) cin>>sp[i]; sort(sp,sp+n); int t=0; while(m>2){ t+=min(sp[1]+sp[0]+sp[m]+sp[1],sp[m]+sp[m-1]+sp[0]*2); m-=2; } if(m==2) t+=(sp[0]+sp[1]+sp[2]); else if(m==1) t+=sp[1]; else t+=sp[0]; cout<<t<<endl; } return 0;}
0 0
- 7.6 EPOJ 1700Crossing River
- PKU 1700 Crossing River
- pku 1700 Crossing River
- poj 1700 Crossing River
- Poj 1700 Crossing River
- POJ 1700 Crossing River
- [poj] 1700 Crossing River
- POJ 1700 Crossing River
- poj 1700 Crossing River
- POJ-1700-Crossing River
- poj-1700 Crossing River
- POJ 1700 Crossing River
- POJ 1700 Crossing River
- poj 1700 Crossing River
- poj 1700 Crossing River
- POJ 1700 Crossing River
- poj 1700 Crossing River
- POJ 1700:Crossing River
- git fetch将远程分支信息获取到本地
- 简单易学的机器学习算法——因子分解机(Factorization Machine)
- 粒子系统基本原理 给出粒子中心点的坐标和粒子的大小,则很容易计算出粒子所需要的4个顶点的位置坐标。粒子系统由大量的粒子构成。每个粒子具有一组属性例如位置大小纹理颜色透明度运动速度加速度生命周期等属性。
- 215. Kth Largest Element in an Array
- 【华为练习题】 闯迷宫(高级)
- 7.6 EPOJ 1700Crossing River
- git 大全
- 尝试使用 AccessibilityService 解决应用安装提示
- android之androidstudio如何导入SlidingMenu
- μC/OS-Ⅱ的终端
- 事务管理
- 关于高并发
- Exception
- freeMaker模版引擎替换参数