题意

\(k(1 \le k \le 300)\)种物品,价值分别为\(c_i(0 \le c_i \le 1000)\)。有\(n(1 \le n \le 1000)\)分钟,每分钟可以选择一个物品\(i\),价值为距离上次选择该物品的时间 * \(c_i\)。求最大价值。

分析

发现对于一种物品,价值为\(c_i * \sum_{j=2}^{a} (t_j-t_{j-1}) = c_i * (t_a-t_1)\)。\(t_i\)表示第\(i\)次选这个物品的时间。这样,我们只需要为每一个物品找到一个开始和结束时间的时间即可。

由于考虑任意两种物品及其位置对其它的物品的贡献无影响,所以我们考虑任意两种物品。

对于两种物品\(i, j\),假设\(c_i \ge c_j\),他们开始和结束时间分别为\(l_i, r_i\)和\(l_j, r_j\),则最优解中肯定\(l_i < l_j, r_j < r_i\),证明如下:

首先显然肯定不可能\(l_j < l_i, r_i < r_j\)。

假设\(l_i < l_j, r_i < r_j\)(\(l_j < l_i, r_j < r_i\)证明类似),则可以证明将\(r_i, r_j\)交换后更优(证明大简单,略)。

所以我们将物品排序后,一个个取即可。

题解

所以贪心地取即可

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=500005;
int n, k, a[N];
int main() {
scanf("%d%d", &n, &k);
for(int i=1; i<=k; ++i) {
scanf("%d", &a[i]);
}
sort(a+1, a+1+k);
int num=n-1;
ll ans=0;
for(int i=k; i; --i) {
if(num<0) {
break;
}
ans+=(ll)num*a[i];
num-=2;
}
printf("%lld\n", ans);
return 0;
}

【BZOJ】2697: 特技飞行的更多相关文章

  1. BZOJ 2697 特技飞行(贪心)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2697 [题目大意] 神犇航空开展了一项载客特技飞行业务. 每次飞行长N个单位时间,每个 ...

  2. BZOJ——2697: 特技飞行

    http://www.lydsy.com/JudgeOnline/problem.php?id=2697 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: ...

  3. BZOJ2697: 特技飞行

    2697: 特技飞行 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 607  Solved: 363[Submit][Status] Descript ...

  4. P5302 [GXOI/GZOI2019]特技飞行

    题目地址:P5302 [GXOI/GZOI2019]特技飞行 这里是官方题解(by lydrainbowcat) 题意 给 \(10^5\) 条直线,给 \(x = st\) 和 \(x = ed\) ...

  5. [国家集训队]特技飞行 贪心BZOJ2697

    题目背景 1.wqs爱好模拟飞行. 2.clj开了一家神犇航空,由于clj还要玩游戏,所以公司的事务由你来打理. 注意:题目中只是用了这样一个背景,并不与真实/模拟飞行相符 题目描述 神犇航空开展了一 ...

  6. 洛谷——P3918 [国家集训队]特技飞行

    P3918 [国家集训队]特技飞行 神犇航空开展了一项载客特技飞行业务.每次飞行长N个单位时间,每个单位时间可以进行一项特技动作,可选的动作有K种,每种动作有一个刺激程度Ci.如果连续进行相同的动作, ...

  7. 【GZOI 2019】特技飞行

    Problem Description 公元 \(9012\) 年,Z 市的航空基地计划举行一场特技飞行表演.表演的场地可以看作一个二维平面直角坐标系,其中横坐标代表着水平位置,纵坐标代表着飞行高度. ...

  8. Loj #3085. 「GXOI / GZOI2019」特技飞行

    Loj #3085. 「GXOI / GZOI2019」特技飞行 题目描述 公元 \(9012\) 年,Z 市的航空基地计划举行一场特技飞行表演.表演的场地可以看作一个二维平面直角坐标系,其中横坐标代 ...

  9. 【LOJ】#3085. 「GXOI / GZOI2019」特技飞行

    LOJ#3085. 「GXOI / GZOI2019」特技飞行 这显然是两道题,求\(C\)是一个曼哈顿转切比雪夫后的线段树扫描线 求\(AB\),对向交换最大化和擦身而过最大化一定分别为最大值和最小 ...

随机推荐

  1. spring 集成 log4j 配置

    在web.xml中增加如下代码: <context-param> <param-name>log4jConfigLocation</param-name> < ...

  2. hdu 4050 2011北京赛区网络赛K 概率dp ***

    题目:给出1-n连续的方格,从0开始,每一个格子有4个状态,左右脚交替,向右跳,而且每一步的步长必须在给定的区间之内.当跳出n个格子或者没有格子可以跳的时候就结束了,求出游戏的期望步数 0:表示不能到 ...

  3. 使用SOUI开发的界面集锦

    仿QQ管家界面

  4. ios 多文件上传

    /** *  上传多个文件 * *  @param url      请求接口地址 *  @param filedata 文件名称和数据(key:value) *  @param btnName  上 ...

  5. 【SQL 触发器】

    一.MySQL上触发器的使用 示例: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW t ...

  6. 软件开发中的完整测试所包括的环节UT、IT、ST、UAT

    软件开发中的完成测试环境所包括的环节包括:UT.IT.ST.UAT UT = Unit Test 单元测试 IT = System Integration Test 集成测试ST = System T ...

  7. LoadRunner11录制APP脚本(2)

    通过安卓模拟器实现LoadRunner11录制APP脚本 http://www.51testing.com/html/24/15110424-3686857.html http://www.51tes ...

  8. Mongdb使用客户端

    安装Robomongo图形化管理工具 Robomongo是一个基于 Shell 的跨平台开源 MongoDB 管理工具.嵌入了 JavaScript 引擎和 MongoDB mogo . 只要你会使用 ...

  9. MySQL客户端工具推荐

    PhpMyAdmin 傻瓜级的 Web 页面管理器,无需到处安装,只需一台支持 PHP 运行环境的服务器 功能上一般只限数据表的增删改查 在一台安装了phpmyadmin的机器上是可以连其它服务器上的 ...

  10. AOP动态代理解析5-cglib代理的实现

    CGLIB是一个强大的高性能的代码生成包.它广泛地被许多AOP的框架使用,例如Spring AOP和dynaop,为他们提供方法的Interception(拦截).EasyMock和jMock是通过使 ...