杭电OJ1789、南阳OJ236(贪心法)解题报告
杭电OJ1789http://acm.hdu.edu.cn/showproblem.php?pid=1789
南阳OJ236http://59.69.128.203/JudgeOnline/problem.php?pid=236
1、最简单的贪心法是只有一个东西需要考虑(如安排会场,只需要将 "时间" 进行排序),
即使需要考虑两个,也有一个明显的先后顺序(比如应先考虑开头时间,开头一样的,再找结束时间早的)
2、而稍难的问题如这两个题目的贪心法则是建立在两个处于平行地位的东西上进行的,(因为都需要同时考虑,如杭电OJ的时间与分数平等地位,南阳OJ的重量和长度地位平等)
这个时候就需要对其中一个排序,对另一个通过for循环的形式进行遍历选择。
如杭电OJ中由于既要考虑期限大小,又要考虑分数高低,并且显然二者的地位是平等的,这时就需要先对其中一个进行排序,然后通过一个for循环进行遍历选择
具体操作为:首先将分数按大小排序,然后利用双层for循环(外层构造情景,也就是过程,内层进行遍历找到最优解)找到每个步骤的最优解
再具体一点就是:分数按照大小排序之后,先利用一个外层for来营造情景(也就是过程,本题为日期(第%d天)),然后利用内层for通过按顺序遍历排好序的数组找到最优解
再如南阳OJ由于既要考虑木棒长度,又要考虑木棒的重量,并且二者的地位是相等的,这是也就需要先对其中一个进行排序,然后通过一个for循环进行遍历选择
具体操作是:首先将木棒长度排序,然后利用双层for循环(外层构造情景,也就是过程,内层进行遍历找到最优解)找到每个步骤的最优解
再具体一点就是:木棒按照长度排序之后,先利用一个外层for构造情景(也就是过程,本题为前一个木板的重量),然后利用内层for通过按顺序遍历排好序的数组找到最优解
概括一下就是先将其中一个变量 a 进行排序, 然后利用外层for与另一个变量b构造出过程,然后内层根据b 的最优进行遍历即可
(因为通过a的排序已经将化为最优,现在只需用循环找最优b即可)
杭电OJ1789、南阳OJ236(贪心法)解题报告的更多相关文章
- Codeforces Round #211 (Div. 2) D题(二分,贪心)解题报告
---恢复内容开始--- 题目地址 简要题意: n个小伙子一起去买自行车,他们有每个人都带了一些钱,并且有公有的一笔梦想启动资金,可以分配给任何小伙子任何数值,当然分配权在我们的手中.现在给出m辆自行 ...
- 杭电 OJ 提交代码需要注意的问题
杭电acm 提交代码需要注意的问题 1. 用 Java 的时候类名请用 Main 2. Java 提交出现 PE 的可能原因有 1) 最基本的错误是空格问题,比如注意每行的末尾是否输出空格 2) 用 ...
- 杭电dp题集,附链接还有解题报告!!!!!
Robberies 点击打开链接 背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多少钱 最脑残的是把总的概率以为是抢N家银行的概率之和- 把状态转移方程写成了f ...
- HDU 4864 Task (贪心+STL多集(二分)+邻接表存储)(杭电多校训练赛第一场1004)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4864 解题报告:有n台机器用来完成m个任务,每个任务有一个难度值和一个需要完成的时间,每台机器有一个可 ...
- 杭电ACM分类
杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...
- acm入门 杭电1001题 有关溢出的考虑
最近在尝试做acm试题,刚刚是1001题就把我困住了,这是题目: Problem Description In this problem, your task is to calculate SUM( ...
- 杭电ACM题单
杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最 ...
- 杭电oj 4004---The Frog Games java解法
import java.util.Arrays; import java.util.Scanner; //杭电oj 4004 //解题思路:利用二分法查找,即先选取跳跃距离的区间,从最大到最小, // ...
- 杭电acm习题分类
专注于C语言编程 C Programming Practice Problems (Programming Challenges) 杭电ACM题目分类 基础题:1000.1001.1004.1005. ...
随机推荐
- aria2c --enable-rpc --rpc-listen-all -D
在后台启动的方法,如题, 用来配合 web-aria2
- English trip -- Review Unit8 Work 工作
工作一般询问对方的工作情况的方式: What job is it? 它的工作是什么? You're a engineer? 你是工程师? Right 是的 What do you do? ...
- IDEA设置类、方法注释模板
类注释模板 File -> Other Setting -> Default Setting打开默认设置 Editor -> File and Code Templates -> ...
- MySql 定时完成备份
<?php /*定时备份数据库文件*/ //设置时区 date_default_timezone_set('PRC'); //创建目录 $dirname = 'e:/mysql_dump/'.d ...
- python-day20--正则表达式与re模块
1.通过re模块可以做一些关于正则的相关操作 2.正则表达式:做字符串匹配的规则 1)字符组:在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[ ]表示 [0-9][a-f][A-F] ...
- failed to load response data
当需要根据后台传回地址跳转页面时 即使使用preserve log 可以查看上一个页面获取地址请求,但是此时请求返回值为failed to load response data 当关闭页面跳转可以查看 ...
- HDOJ1003
#include<iostream> using namespace std; int main() { ],t=,m; cin >> n; while(n--) { cin ...
- Django rest framework(2)----权限
一 添加权限 (1)API/utils文件夹下新建premission.py文件,代码如下: message是当没有权限时,提示的信息 #!/usr/bin/env python # coding:u ...
- dubbo监控中心搭建
从网上下载了一个dubbo监控中心,地址忘了,文件名是dubbo-monitor-simple-2.5.3-assembly.tar.gz. 修改监控中心配置文件如下: dubbo.container ...
- 白化whitening
原文地址:http://blog.csdn.net/hjimce/article/details/50864602 作者:hjimce 一.相关理论 白化这个词,可能在深度学习领域比较常遇到, ...