nyoj-47-过河问题|POJ-1700-Crossing River
http://acm.nyist.net/JudgeOnline/problem.php?pid=47
http://poj.org/problem?id=1700
解题思路:求最少需要多少时间才能都通过。先将每个人过河所需的时间升序排序
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
4
5 int a[];
6 int n, t, i;
7 int ans;
8
9 int cmp(const void *a, const void *b){
return *(int *)a - *(int *)b;
}
void solve(){
ans = ;
while(n){
if(n == ){
ans += a[];
break;
}
else if(n == ){
ans += a[];
break;
}
else if(n == ){
ans += a[] + a[] + a[];
break;
}
else{
//人较多的情况下,判断是先把走得最慢的两个人送过去合算还是先把走得最快和最慢的人先送过去
if( * a[] > a[] + a[n - ]){
ans += (a[n - ] + a[n] + * a[]);
}
else{
ans += (a[] + * a[] + a[n]);
}
n -= ;
}
}
printf("%d\n", ans);
}
int main(){
scanf("%d", &t);
while(t--){
scanf("%d" ,&n);
for(i = ; i <= n; i++){
scanf("%d", &a[i]);
}
qsort(a + , n, sizeof(a[]), cmp);
solve();
}
return ;
53 }
nyoj-47-过河问题|POJ-1700-Crossing River的更多相关文章
- poj 1700 Crossing River 过河问题。贪心
Crossing River Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 9887 Accepted: 3737 De ...
- POJ 1700 Crossing River (贪心)
Crossing River Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 9585 Accepted: 3622 Descri ...
- poj 1700 Crossing River C++/Java
http://poj.org/problem?id=1700 题目大意: 有n个人要过坐船过河,每一个人划船有个时间a[i],每次最多两个人坐一条船过河.且过河时间为两个人中速度慢的,求n个人过河的最 ...
- POJ 1700 - Crossing River
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 13982 Accepted: 5349 Description A gr ...
- ACM学习历程——POJ 1700 Crossing River(贪心)
Description A group of N people wishes to go across a river with only one boat, which can at most ca ...
- POJ 1700 cross river (数学模拟)
...
- 1700 Crossing River
题目链接: http://poj.org/problem?id=1700 1. 当1个人时: 直接过河 t[0]. 2. 当2个人时: 时间为较慢的那个 t[1]. 3. 当3个人时: 时间为 t[0 ...
- nyoj 47——过河问题——————【贪心】
过河问题 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边.如果不借助手电筒的话,大家是无论如何也不敢过桥去的 ...
- NYOJ 47过河问题
主要思路:先排序.有两种可能是最小的情况,一种是让最小的去带着最大的过去,然后最小的再回来,还有一种就是先最小的和第二小的一块过去, 然后最小的回来,让最大的和第二大的过去,接着第二小的回来,第二小和 ...
- Crossing River(1700poj)
Crossing River Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 9919 Accepted: 3752 De ...
随机推荐
- E20180709-hm
extract vt. 提取; (费力地) 拔出; 选取; 获得
- Mybatis源码解读-设计模式总结
虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式. Mybatis至少 ...
- su和sudo命令的用法
为了安全起见,尽量不要用root用户去做所有事情,因为一旦执行了错误的命令,可能会直接导致系统崩溃. 一.su命令 su 命令可以解决切换用户身份的需求,使得当前用户在不退出登录的情况下,切换到其他用 ...
- CZGL.AliIoTClient 文档:说明
文档目录: 说明 1. 连接阿里云物联网 2. IoT 客户端 3. 订阅Topic与响应Topic 4. 设备上报属性 4.1 上报位置信息 5. 设置设备属性 6. 设备事件上报 7. 服务调用 ...
- redis连接错误
连接redis错误:ERR Client sent AUTH, but no password is set 2018-07-04 20:33 by robinli, 4367 阅读, 0 评论, 收 ...
- PostgreSQL - 用psql 运行SQL文件
对于预先写好的SQL文件,比如/home/user1/updateMyData.sql, 可以有两种方式来运行这个SQL文件. 方式一:连接db后执行SQL文件 首先通过psql连接到对应的db: p ...
- iOS 更改状态栏、导航栏颜色的几种方法
ios上状态栏 就是指的最上面的20像素高的部分状态栏分前后两部分,要分清这两个概念,后面会用到: 前景部分:就是指的显示电池.时间等部分:背景部分:就是显示黑色或者图片的背景部分: (一)设置sta ...
- ORA-00972_标识符过长
执行SQL查询报:"ORA-00972:标识符过长"错误. 执行SQL: SELECT T.F_FTBS, T.F_TZMC "X组/XXXX/XXXX名称", ...
- 进程---Process
#! /usr/bin/env python# -*- coding:utf-8 -*- """ python中的多线程其实并不是真正的多线程(全局解释器锁(GIL)存在 ...
- JAVA常用知识总结(十一)——数据库(一)
项目中用到的不常见sql语法 1:空值不在前的排序 select a.* from WZX_SCZY A order by SCZY_START_TIME desc nulls last (不加nul ...