习题 8-12 顾客是上帝(Keep the Customer Satisfied,ACM/ICPC SWERC 2005,UVa1153)

2024-04-13 02:58

本文主要是介绍习题 8-12 顾客是上帝(Keep the Customer Satisfied,ACM/ICPC SWERC 2005,UVa1153),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原题链接:https://vjudge.net/problem/UVA-1153
分类:贪心法
备注:不重叠区间变形

按截止时间从小到大排序,如果当前工作不能按时完成,则尝试替换之前选过工作中耗时最久的。

#include<bits/stdc++.h>
using namespace std;
const int maxn=800000+5;
int t,n,kase;
struct node{int p,q;bool operator < (const node& b) const {return (q<b.q||(q==b.q&&p<b.p));}
}a[maxn];
int main(void){//freopen("in.txt","r",stdin);//freopen("out.txt","w",stdout);scanf("%d",&t);while(t--){if(kase++)printf("\n");scanf("%d",&n);for(int i=0;i<n;i++)scanf("%d %d",&a[i].p,&a[i].q);sort(a,a+n);int pos=0;priority_queue<int>pq;for(int i=0;i<n;i++){if(pos+a[i].p<=a[i].q){pq.push(a[i].p);pos+=a[i].p;}else if(!pq.empty()){if(pq.top()>a[i].p&&pos+a[i].p-pq.top()<=a[i].q){pos+=a[i].p-pq.top();pq.pop(); pq.push(a[i].p);}}}printf("%d\n",pq.size());}return 0;
}

这篇关于习题 8-12 顾客是上帝(Keep the Customer Satisfied,ACM/ICPC SWERC 2005,UVa1153)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/898961

相关文章

2005-2022年全国及各省绿色信贷水平测算数据(含原始数据+计算过程+计算结果)

2005-2022年全国及各省绿色信贷水平测算数据(含原始数据+计算过程+计算结果) 1、时间:2005-2022年 2、来源:工业统计年鉴、统计年鉴、其中2017年采用插值法填补 3、范围:31省 4、方法说明:选取各省六大高耗能产业利息支出占工业产业利息总支出的比率作为反向指标来衡量绿色信贷水平;六大高能耗产业为:化学、石油、电力热力、黑色金属、有色金属、非金属 5、下载链接: 2

ACM实训冲刺第八天

【碎碎念】由于昨天做的题都有思路,加上今天有点疲惫,故今天先不复习了,直接开始今天的算法学习 Tokitsukaze and All Zero Sequence 问题   思路    读入测试用例数:首先读取一个整数t,表示接下来会有t组数据需要处理。遍历每个测试用例:对于每组数据,先读取序列的长度n,然后读取这n个整数到数组中,并使用另一个数组a来统计每个数字出现的次数。

ACM学习历程30——回溯算法

一、回溯算法也叫试探法,它是一种系统地搜索问题的解的方法。回溯算法的基本思想是:从一条路往前走,能进则进,不能进则退回来,换一条路再试。用回溯算法解决问题的一般步骤为: 1、定义一个解空间,它包含问题的解。 2、利用适于搜索的方法组织解空间。 3、利用深度优先法搜索解空间。 4、利用限界函数避免移动到不可能产生解的子空间。 二、回溯举例 2.1皇后问题 问题描述:在n×n 格的棋

ACM学习历程29——搜索算法

搜索算法是利用计算机的高性能来有目的地穷举一个问题的部分或所有的可能情况,从而求出问题的解的一种方法。搜索过程实际上是根据初始条件和扩展规则构造一棵解答树并寻找符合目标状态的节点的过程。涉及到的概念包括:状态、状态转移、搜索树、状态空间、可行解、最优解。 一、相关概念 状态:对问题以及事物状态在某一发展阶段的数学描述。 状态转移:问题从一种状态转移到另一种状态的操作。 搜索树:以阶段中每一

ACM学习历程28——利用数组下标

数组是在ACM程序设计大赛中经常用到的一类复合数据类型,对于一个数组类型的变量,我们可在变量声明的时候声明变量的类型,例如:整型数组、字符数组等。对于普通字符数组,其实是数组每个单元中存储了一个字符;对于字符串,实际上除了在每个存储位置存储了一个一个字符外,在字符串结束的位置还额外存储了一个’\0’作为字符串借书的标志。在这篇博文中,并不介绍数组在存储上的一些特性,只是想说明在解答题目的过程中,若

你知道为什么企业需要开展销售门店售价违规神秘顾客暗访吗?

在当今日益激烈的商业竞争环境中,保持价格策略的公正透明对于企业的成功至关重要。对于许多企业来说,销售门店的价格违规问题不仅可能损害品牌形象,还可能引发消费者信任危机,进而影响企业的长期发展。因此,开展销售门店价格违规监测成为了一项必要的任务。 为什么企业需要开展销售门店价格违规监测? 维护品牌形象:价格违规可能导致消费者对品牌产生负面印象,进而影响品牌的声誉和市场地位。通过价格违规监测,企

ACM:动态规划,物品无限的背包问题(完全背包问题)

题目:有n种物品,每种物品都有无限件可用。第i种物品的体积是vi,重量是wi。选一些物品装到一个容量为C的背包中,使得背包内物品在总体积不超过C的前提下重量尽量大。 分析,完全背包问题,相对于上上篇文章的硬币问题,只是由DAG上的无权图变成了这里的DAG上的带权图! 输出最后满足体积不超过背包容量的条件下,背包中的最大重量。 代码: #include <iostream>#include

ACM:贪心法:乘船问题。

题目:有n个人,第i个人的重量为wi,每艘船的最大载重量均为C,且最多只能乘两个人。用最少的船装载所有人。 分析:贪心法!            考虑最轻的人i,他应该和谁一起坐呢?如果每个人都无法和他一起坐船,那么唯一的方案就是每个人坐一艘船!            否则,他应该选择能和他一起坐船的人中最重的一个j。            这样的方法是贪心的!因为:它只是让“眼前”的浪费

提升网站顾客转换率的 4 大关键

很常见的事情:在网站上线、火力全开地宣传过后一段时间后,打开网站分析报告,发现网站算是有了稳定的流量,但是,会员注册数或产品销售却不如预期。 访客量终究是过程而不是目的,究竟要怎么做才能够把产品推销出去、进而稳固获利模式呢? 以下,将介绍 4 个能够有效提高网站顾客转换率的撇步。   1. 简洁、精练的内容 首先从内容开始衡量。很多公司过于在意网站的视觉效果,结果放错了重点,忽略应该重

acm反思1

搞acm也一年了,我也不知道这一年到底收获了很多,真的可以说,这一年,没有白过吧,也许,可以说,是很充实,说实话,我这样的人,搞ACM也就是为了拿一个奖,为了一个不可达到的奖,想要冲进word final ,然而,现实中,往往,一切都不是那么容易,一切都是那么难,但是反过来想,如果是,那么容易,那又有什么用呢?这一年,做的题目类型太多了,反正,我知道的算法,我听过的名字,我都想全都去学,但是,在真