有关排序的贪心策略的一种证明思想
P1223 排队接水
题目描述
有n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小。
输入输出格式
输入格式:
输入文件共两行,第一行为n;第二行分别表示第1个人到第n个人每人的接水时间T1,T2,…,Tn,每个数据之间有1个空格。
输出格式:
输出文件有两行,第一行为一种排队顺序,即1到n的一种排列;第二行为这种排列方案下的平均等待时间(输出结果精确到小数点后两位)。
输入输出样例
10 56 12 1 99 1000 234 33 55 99 812
3 2 7 8 1 4 9 6 10 5 291.90
说明
n<=1000
ti<=1e6,不保证ti不重复
当ti重复时,按照输入顺序即可(sort是可以的)
分析:
思考一下可以发现应该按升序输出。
可以通过比较相邻两项交换前后的总开销变化来证明。
序列1:a1,a2,a3,a4....an
序列2:a1,a3,a2,a4...an
a1,a4...an的等待时间都不变。a2的等待时间多了a3,a3的等待时间少了a2,总时间变化为a3-a2.
当a3>a2时,交换后总时间变多了,因此不应该交换,故应该将序列升序排列。
转载于:https://www.cnblogs.com/loganlzj/p/10348588.html
有关排序的贪心策略的一种证明思想相关推荐
- 贪心策略(一)(选择排序、分割平衡串、买卖股票、跳跃游戏)
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解. 贪心选择是指所求问题的整体最优解可以通过一系列局 ...
- 贪心策略--16经典问题总结!
贪心算法 编号 题目 1货郎担 问题: 货郎担问题:假定有五个城市,已知费用矩阵如下,分别从五个城市出发,然后选取一条费用最小的线路,验证这种算法不能得到最优解. 贪心选择:每次选择之前没有走过的费用 ...
- 区间覆盖全部类型及部分精选习题汇总详解(贪心策略)
内容如下: 1)区间完全覆盖问题 问题描述:给定一个长度为m的区间,再给出n条线段的起点和终点(注意这里是闭区间),求最少使用多少条线段可以将整个区间完全覆盖 样例: 区间长度8,可选的覆盖线段[2, ...
- 贪心策略:请你设计最优的安排会议日程表,以使得举行的会议数最多
贪心策略:请你设计最优的安排会议日程表,以使得举行的会议数最多 提示:从本文开始,咱们来说贪心策略系列文章!! 贪心策略在互联网大厂的招聘笔试和面试中的地位!!!在笔试中考贪心,而面试不考贪心. (1 ...
- 算法提高:贪心策略的11个经典题目
目录 字典序最小 零钱问题 股票问题(最多持有一支,可以买卖无限次) 小船过河 任务调度器 摆动序列 最小区间 跳跃游戏 II 分糖果 通配符匹配 拼接最大数 字典序最小 题目 给定一个由字符串组成的 ...
- 【贪心策略】背包问题——阿里巴巴与四十大盗
一.问题 假设山洞中有N种宝物,每种宝物有一定的重量w和相应的价值v,大盗的运载能力有限,只能随身携带重量M的宝物,一种宝物只能拿一样,宝物可以分割.那么怎么才能一次带走宝物的价值最大呢? 二.分析 ...
- Codeforces Round #700 (Div. 2) D2 Painting the Array II(最通俗易懂的贪心策略讲解)看不懂来打我 ~
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 整场比赛的A ~ E 6题全,全部题目超高质量题解链接: Codeforces Round #700 ...
- 贪心策略构筑“奶牛铁塔”(洛谷P2676题题解,Java语言描述)
题目要求 P2676题目链接 分析 哈哈哈,好一个"超级书架"+"奶牛铁塔",哈哈哈-- 这题就是用贪心策略,需要排一个序,然后每次选最高大强壮的奶牛加入&qu ...
- 硬币支付问题(贪心策略)
一.什么是贪心策略呢? 贪心算法是一种递推算法,用局部最优解来推导全局最优解,是对遍历解空间的一种优化 当问题具有最优子结构时,可用动态规划,而贪心是动态规划的一种特例 特点: 只看眼前 遵循某种规则 ...
最新文章
- TensorRT-安装-使用
- argument在python里什么意思_在Python中星号*是什么意思?
- Hadoop搭建完全分布式
- cad 快捷键命令大全
- 聊一聊Python的变量类型判断type和isinstance
- gcc malloc/free的质疑
- 建议手机电池85%以下去换电池
- vba_1《考勤表》
- C# ASP.NET WebApi入门
- ubuntu固定内网ip_Ubuntu 设置固定ip地址
- 网络攻防技术——嗅探与欺骗
- 【20220926】html综合案例世纪佳缘
- 苹果笔记本装win7_m2 ngff无线网卡接口的笔记本电脑装苹果网卡
- 智慧家庭信息安全白皮书发布,推动智慧家庭叫好又叫座
- 编程该学什么以及vc++一些心得
- 用blender和MakeHuman生成人体动画
- 服务器 消息 22029,解决SQL Server数据库维护计划失败的问题
- 《C++0x漫谈》系列之:Concept, Concept!
- spring框架env查看星号密码
- Android通过蓝牙获取通讯录
热门文章
- java 反射 静态成员_java 利用反射获取内部类静态成员变量的值
- linux日志打印规则,Linux 打印简单日志(一)
- kafka session.timeout.ms 是指消费一条数据的时间?_干货 | Kafka 内核知识梳理,附思维导图...
- python assert_Python中何时使用断言 assert
- c++中的向量_C ++中的向量
- dir函数python_Python dir()函数
- python float_Python float()
- 路科验证示例_角度形式验证示例
- Java String子序列
- Confluence wiki上传文件时报“不能上传文件至Confluence中,服务器可能已失效”