问题 G: Heartlessly 的魔法石
时间限制: 1 Sec 内存限制: 128 MB

题目描述
Heartlessly 有 n 个魔法石,每个魔法石都有对应的魔法值(用正整数 a i 表示)。Heartlessly把它们按魔法值从小到大排成一行,并分成 k 组,每组魔法石产生的能量为组中最大的魔法值减去最小的魔法值。你能求出这些魔法石产生的最小能量和最大能量分别是多少吗?
输入
第一行,输入两个正整数n,k,分别表示魔法石数量和分组数量。
第二行,输入正整数a1∼an,表示每个魔法石对应的魔法值。
输出
第一行,输出最小能量和最大能量,中间用空格隔开。
样例输入 Copy
8 3
2 3 5 7 11 13 17 19
样例输出 Copy
9 14
提示
样例解释
最小值:[2,3,5,7],[11,13],[17,19]
最大值:[2],[3,5],[7,11,13,17,19]

对于40%的数据, n ≤ 15 , a i ≤ 100 n≤15,ai≤100 n≤15,ai≤100;
对于70%的数据, n ≤ 103 , a i ≤ 106 n≤103,ai≤106 n≤103,ai≤106;
对于另外10%的数据, k = 1 k=1 k=1;
对于另外10%的数据, k = n k=n k=n;
对于100%的数据, k ≤ n ≤ 105 , a i ≤ 109 k≤n≤105,ai≤109 k≤n≤105,ai≤109,保证ai单调不减。

题意:
将排好序的 n n n个数分成 k k k组求最大价值和最小值,每组的价值是每组的最大值-最小值。

思路:
我们可以看出如果分出一组其实最大价值就是  a n − a 1 a_n-a_1 an​−a1​
分成两组就是从中间找个断点,最大价值其实就是少了断点的差值最小值,而最小价值就是少了断点的差值最大值。

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxn=2e5+7;
#define pii pair<ll,ll>
const int mod=1e9+7;
ll qpow(ll a,ll b){ll sum=1;while(b){if(b&1)sum=sum*a%mod;b>>=1;a=a*a%mod;}return sum;
}
ll a[maxn],d[maxn];int main() {ll n,m;cin>>n>>m;for(int i=1;i<=n;i++) scanf("%lld",&a[i]);for(int i=1;i<n;i++){d[i]=a[i+1]-a[i];}sort(d+1,d+n);ll sum=0;for(int i=m;i<n;i++) sum+=d[i];ll ans=0;for(int i=n-m;i>=1;i--) ans+=d[i];cout<<ans<<" "<<sum<<endl;return 0;
}

问题 G: Heartlessly 的魔法石相关推荐

  1. Magic Gems魔法石

    Magic Gems(递推+矩阵快速幂优化) 题面 Reziba has many magic gems. Each magic gem can be split into M normal gems ...

  2. 哈里波特与魔法石pdf_哈里·罗伯茨(CSS)CSS框架的命运与失败

    哈里波特与魔法石pdf Harry Roberts helps teams all over the world to build better front ends. Craig spoke to ...

  3. 《哈利波特与魔法石》英文版读书笔记:目光实体化

    在我小学的时候,我有幸接触到了哈利波特系列小说.后来陆续陆续读完了全部七本.再后来重新阅读了一遍. 众所周知,阅读英文技术文档是诸位程序员的一个必备技能.我在休闲时间阅读哈利波特的英文原著,正是基于这 ...

  4. 个人笔记:算法讲座3.2——魔法石(棋盘最优路径)

    本文仅供学习参考使用,谢谢 目录 问题描述: 思路分析: 算法描述: 测试数据: 递推: 递归: 问题描述: 霍格沃茨魔法学校的密室里有一个巨大的棋盘,棋盘有n * n个格子,Alice丢失了魔杖被伏 ...

  5. 读《哈利波特与魔法石》有感

    花了几天晚上粗略地看完小说<哈利波特与魔法石>(哈利1)一遍了.虽然事先看了wiki关于<死亡圣器>的剧透,不过觉得第一部已经写得很有气势了(不像是面向儿童的读物).觉得哈利波 ...

  6. 牛客OI周赛6-提高组 A 大法师与魔法石

    大法师与魔法石 思路: 对于一个ai, 它可以构成区间[ai/v, ai] 假设和它相邻的为aj, 那么ai 和 aj 构成的区间为[(ai+aj) / v, ai+aj] 那么这两个区间能合并的条件 ...

  7. 个人日记—《哈利波特与魔法石》电影观后感—20200816

    个人日记-<哈利波特与魔法石>电影观后感-20200816 这周看了电影<哈利波特与魔法石>,这部电影是重映的,说明这部电影还是不错的. (1)斯内普-坏人与好人 这部电影中, ...

  8. 【AHOI2002】哈利●波特与魔法石

    题目背景 AHOI2002 DAY2 T2 题目描述 某天,哈利•波特准备去拯救 Super Swamuel 星球上的生灵.该星球上有七种不同的地形,依次分别是:石子路.森林.草地.山地.雪地.沼泽和 ...

  9. 洛谷 P2559 [AHOI2002]哈利·波特与魔法石

    P2559 [AHOI2002]哈利·波特与魔法石 题目描述 输入输出格式 输入格式: 文件中第一行有七个数,分别是 S1. S2 . -. S7 :第二行有两个数,依次分别是起点城市 i 和终点城市 ...

最新文章

  1. 普渡大学李攀:好的图表示到底是什么?
  2. MySQL中的视图操作
  3. exit()和_exit()函数
  4. [你必须知道的.NET] 第一回:恩怨情仇:is和as
  5. 怎样用c语言统计字符个数字,请问这个用c怎么做:输入一串字符,分别统计其中数字和字母的个数...
  6. hsf 架构_HSF源码剖析 - 汪兴的个人空间 - OSCHINA - 中文开源技术交流社区
  7. 开源游戏《一小时人生》GitHub仓库被删,CEO亲自道歉
  8. linux内核 eql.c,Linux Kernel EQL_GETMASTRCFG请求内核信息泄露漏洞
  9. [C++]出错member access into incomplete type
  10. 从程序员到CTO也可以走捷径
  11. 理解Python闭包,这应该是最好的例子
  12. 企业微信检测僵尸粉小工具,企业微信如何检测僵尸粉
  13. XeCJK 使用系统字体
  14. 一文看雷击浪涌的防护解析
  15. 论文排版LaTeX学习笔记
  16. 分布式时序数据库作为工业物联网数据后台的7大优势
  17. Dubbo注解方式与spring的整合原理即@DubboService的机制(2)
  18. 从企业微信、钉钉、班聊、纷享逍客,看企业服务
  19. PTA题目 抓老鼠啊~亏了还是赚了?
  20. 让你的SpringBoot更有个性, 定制酷炫Banner

热门文章

  1. 如何将ELMo词向量用于中文
  2. 全面屏手机Android,前所未有的新姿态 安卓真全面屏手机推荐
  3. asar软件包linux,ASAR文件查看打包解包工具下载-ASAR文件查看打包解包工具v2018.07.12免费版-ucbug软件站...
  4. 新型种肥将农作物产量提高25%
  5. 【Xilinx ILA调试】Xilinx 硬件调试ILA
  6. OGG-01028:归档漂移
  7. 蓝牙无线运动耳机排行榜、口碑最好的运动蓝牙耳机推荐
  8. 国产手机纷纷研发自主操作系统,都可以丝滑兼容安卓应用
  9. NodeJS设计模式
  10. 如何通过传感器计算海拔