codeforce 853A Planning
题目地址:http://codeforces.com/problemset/problem/853/A
题目大意:
本来安排了 n 架飞机,每架飞机有 ci 的重要度,
第 i 架飞机的起飞时间为 i ,而现在,在 k 时之前不能有任何飞机起飞,每个时间点只有1架飞机能起飞,
损失=(飞机现起飞时间-飞机原起飞时间)*该飞机的重要度.
现在要求你排一张时间表,要求每架飞机都只能在原起飞时间及以后起飞,且使损失最小.
题解:
贪心
暴力的数组模拟tle,o(≧口≦)o
#include<bits/stdc++.h>
using namespace std;
int n,k; struct node
{
int id;
long long c;
}a[];
int b[],ans[];
bool vis[];
long long sum;
bool cmp(node a,node b)
{
if (a.c!=b.c) return a.c>b.c;
else return a.id>b.id;
} int main()
{
scanf("%d%d",&n,&k);
for(int i=;i<=n;i++)
{
scanf("%d",&a[i].c);
a[i].id=i;
}
sort(a+,a++n,cmp);
for(int i=;i<=n;i++) {b[i]=k+i; vis[i]=;}
sum=;
for(int i=;i<=n;i++)
{
int t=;
while()
{
int kk=lower_bound(b+t+,b++n,a[i].id)-b;
if (!vis[kk]) { vis[kk]=; sum+=(b[kk]-a[i].id)*a[i].c; ans[a[i].id]=b[kk]; break;}
else t=kk;
}
}
printf("%lld\n",sum);
for(int i=;i<=n;i++)
{
if (i-) printf(" ");
printf("%d",ans[i]); }
printf("\n");
return ;
}
codeforce 853A Planning的更多相关文章
- CodeForces - 853A Planning (优先队列,贪心)
Helen works in Metropolis airport. She is responsible for creating a departure schedule. There are n ...
- Codeforces 853A Planning
题意 给出飞机单位晚点时间代价和原定起飞时间,现在前k分钟不能起飞,求付出的最小代价和起飞顺序 思路 构造两个优先队列q1,q2,q1按时间顺序,q2按代价顺序,初始将所有飞机入q1,将时间在k前的飞 ...
- (codeforces 853A)Planning 贪心
Helen works in Metropolis airport. She is responsible for creating a departure schedule. There are n ...
- 敏捷转型历程 - Sprint3 Planning
我: Tech Leader 团队:团队成员分布在两个城市,我所在的城市包括我有4个成员,另外一个城市包括SM有7个成员.另外由于我们的BA离职了,我暂代IT 的PO 职位.PM和我在一个城市,但他不 ...
- HOW TO RUN A SPRINT PLANNING MEETING (THE WAY I LIKE IT)
This is a sample agenda for a sprint planning meeting. Depending on your context you will have to ch ...
- Tips for Planning Your Business Startup
原文链接:http://domaintree.me/?p=1037 By Robert Thibodeau – Starting a business can be a very daunting ...
- Employment Planning[HDU1158]
Employment Planning Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Software Engineering: 3. Project planning
recourse: "Software Engineering", Ian Sommerville Keywords for this chapter: planning sche ...
- 运动规划 (Motion Planning): MoveIt! 与 OMPL
原创博文:转载请标明出处:http://www.cnblogs.com/zxouxuewei 最近有不少人询问有关MoveIt!与OMPL相关的话题,但是大部分问题都集中于XXX功能怎么实现,XXX错 ...
随机推荐
- Delphi XE5 for Android (七)
Delphi XE5下,TMainMenu和TPopupMenu不可用,那么如何支持Android的菜单呢? 查看了一些资料,不得要领,只是摸索着先模拟一下吧. 首先在窗体上放置一个TPanel,在其 ...
- 奇怪的分式|2014年蓝桥杯B组题解析第六题-fishers
奇怪的分式 上小学的时候,小明经常自己发明新算法.一次,老师出的题目是: 1/4 乘以 8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png) 老师刚想批评他,转念 ...
- 小Z的袜子(莫队分块)题解
小Z的袜子(hose) 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……具体来说,小Z把这N只袜 ...
- shiro的简单入门使用
这里只是测试登录认证,没有web模块,没有连接数据库,用户密码放在shiro.ini配置中,密码没有加密处理,简单入门. 基于maven 先看目录结构 测试结果 pom.xml <?xml ve ...
- stm32 ADC使用方法
void Adc_Init(void) { ADC_InitTypeDef ADC_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_AP ...
- GATK--使用转载
http://blog.sciencenet.cn/blog-1469385-819498.html 文章目录 一.准备工作 二.流程概览 三.流程 首先说说GATK可以做什么.它主要用于从seque ...
- 【Python】【元编程】【三】【元类】
'''# str. type 和 LineItem 是object 的子类 str. object 和 LineItem 是 type 的实例,因为它们都是类object 类和 type 类之间的关系 ...
- Linux——用户管理简单学习笔记(一)
Linux用户分为三种: 1:超级用户(root,UID=0) 2:普通用户(UID 500-60000) 3:伪用户(UID 1-499) 伪用户: 1.伪用户与系统和程序服务相关 :nbin.d ...
- Codeforces Round #289 (Div. 2, ACM ICPC Rules) E. Pretty Song 算贡献+前缀和
E. Pretty Song time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- codeforces 351 div2 C. Bear and Colors 暴力
C. Bear and Colors time limit per test 2 seconds memory limit per test 256 megabytes input standard ...