Nowcoder Girl 初赛第五题

来源

Nowcoder Girl 初赛第五题

题面

\(n(1<=n<=10000)\)件武器,每件武器对于属性有加成,一共五种属性。若使用其中的\(x\)件武器,每个属性获得的加成是\(x\)件武器最大的加成值。要求取出\(k(1<=k<=n)\)件武器,使得所有属性获得的加成值之和最大。输出加成值之和的最大值。

样例

INPUT

4 2
30 30 30 30 0
50 0 0 0 0
0 50 0 50 10
0 0 50 0 20
OUTPUT

170
INPUT

4 3
30 30 30 30 0
50 0 0 0 0
0 50 0 50 10
0 0 50 0 20
OUTPUT

220

题解

  • 如果对于每个属性,都取加成值最大的那件武器,那么最后会取\(t\)件武器,易知\(1<=t<=5\)。
  • 如果\(k>=t\),最后的答案就是取这\(t\)件武器,其他\(k-t\)件随便取。
  • 如果\(k<t\):
    • 可以用\(5\)位的\(bitmask\)表示取了哪几个属性,\(bitmask\)一共有\(2^5=32\)个取值。
    • 对于每个取值,计算取哪件武器会使得选中的这几个属性的加成之和最大。
    • 最后取了\(t\)件武器,易知\(1<=t<=32\)。
    • 那么最后的\(k\)个答案应该在这\(32\)件武器中取。
    • 证明:
      • 很容易知道,最后取出的\(k\)件武器只有\(t\)件是有贡献的,\(1<=t<=5\)。
      • 假设有一件武器贡献了\(1、3、4\)这三个属性,那么它肯定是所有武器中\(1、3、4\)这三个属性之和最大的武器。如果不是的话,我们可以取是的那件武器,这样最后的答案会更大。
      • 然后每一类属性之和最大的武器我们都预处理出来了,\(k\)又小于\(5\),随便\(k\)个循环就可以搞定了。

Nowcoder Girl 初赛 T5的更多相关文章

  1. hdu6188&&百度之星初赛(B) T5

    度度熊的交易计划 Problem Description 度度熊参与了喵哈哈村的商业大会,但是这次商业大会遇到了一个难题: 喵哈哈村以及周围的村庄可以看做是一共由n个片区,m条公路组成的地区. 由于生 ...

  2. 百度之星初赛(A)——T5

    今夕何夕 Problem Description 今天是2017年8月6日,农历闰六月十五. 小度独自凭栏,望着一轮圆月,发出了“今夕何夕,见此良人”的寂寞感慨. 为了排遣郁结,它决定思考一个数学问题 ...

  3. HDU 6787 Chess 2020百度之星 初赛三 T5 题解 dp

    传送门:HDU 6787 Chess Problem Description 你现在有一个棋盘,上面有 n 个格子,格子从左往右,1,-,n 进行标号.你可以在棋盘上放置恰好 m 个传送器,并且对于每 ...

  4. CCF NOI plus 201(7)6 初赛题 解题报告

    GTMDCCF. 今年这题怎么评价? 去看我在知乎的回答:https://www.zhihu.com/question/66621360/answer/244222388 挨个说一遍. 单项选择题 T ...

  5. NOIP2016提高组初赛(C++语言)试题 个人的胡乱分析

    最近在做历年的初赛题,那我捡几道比较有代表性的题说一下好了 原题可以在这里看:https://wenku.baidu.com/view/10c0eb7ce53a580217fcfede.html?fr ...

  6. 哈尔滨理工大学第七届程序设计竞赛初赛(BFS多队列顺序)

    哈尔滨理工大学第七届程序设计竞赛初赛https://www.nowcoder.com/acm/contest/28#question D题wa了半天....(真真正正的半天) 其实D题本来就是一个简单 ...

  7. nowcoder(牛客网)OI测试赛3 解题报告

    昨天因为胡搞了一会儿社团的事情,所以错过(逃过)了nowcoder的测试赛..... 以上,听说还是普及组难度qwq,而且还有很多大佬AK(然而我这么蒻肯定还是觉得有点难度的吧qwq) 不过我还是日常 ...

  8. NOIP2018初赛总结(提高组)(试题+答案+简要解析)

    NOIP2018初赛总结(提高组) 更新完毕(纯手敲),如果有错误请在下面留言 单选题 T1.下列四个不同进制的数中,与其它三项数值上不相等的是 A.\((269)_{16}\) B.\((617)_ ...

  9. NOIP 2011 提高组初赛错题简析

    Preface 好久没做初赛题了,据说今年的审核会更加严苛,作为一名去年未PY时只有\(92\)分的蒟蒻,我今年看来是\(90\)分都莫得了 然而今年也没怎么看重初赛,结果现在才来做,翻车到了\(84 ...

随机推荐

  1. 基于 Annotation 的 Spring AOP 权限验证方法的实现

    1. 配置 applicationContext 在 Spring 中支持 AOP 的配置非常的简单,只需要在 Spring 配置文件 applicationContext.xml 中添加: < ...

  2. 学会了ES6,就不会写出那样的代码

    用let不用var ES6之前我们用var声明一个变量,但是它有很多弊病: 因为没有块级作用域,很容易声明全局变量 变量提升 可以重复声明 还记得这道面试题吗? var a = []; for (va ...

  3. RocketMQ的一些特性

    一 nameserver 相对来说,nameserver的稳定性非常高.原因有二: 1 nameserver互相独立,彼此没有通信关系,单台nameserver挂掉,不影响其他nameserver,即 ...

  4. WPF 用户控件嵌入网页

    WPF使用用户控件嵌入网页,直接使用WebBrowser或Frame会产生报错,报错信息如下: 1.使用WebBrowser,<WebBrowser Source="http://19 ...

  5. Details.cshtml(118): error CS1001: 应输入标识符

    写了没定义 @Html.DisplayFor(model => model.)

  6. 完美世界-Java游戏开发-二面

    时间:2017-03-30 时长:15分 类型:二面 面试官比较聊得来,人比较和善,游戏面试还是nice的,老铁 1. 自我介绍 2. 平时玩哪些游戏?端游.页游 3. Maven你是怎么使用的? 4 ...

  7. SmartGit破解使用的个人方法

    转自:https://www.cnblogs.com/nn839155963/p/5912788.html SmartGit是收费的,可以30天的试用期,30天试用期过后,smartgit 需要输入序 ...

  8. groovy和java的主要区别

    1.Default imports,默认情况下,导入下面的包: java.io. * java.lang.* java.math.BigDecimal中 java.math.BigInteger中 j ...

  9. sql语句优化总结

    sql语句优化总结 数据库优化的几个原则: 1.尽量避免在列上做运算,这样会导致索引失败: 2.使用join是应该用小结果集驱动大结果集,同时把复杂的join查询拆分成多个query.不然join的越 ...

  10. uestc 1072 a ^ b

    a ^ b Time Limit: 1000 ms Memory Limit: 65535 kB Solved: 334 Tried: 2153 Description 求a的b次方后四位.   In ...