题意:

有n道题,这n道题共m分,要求你至少做出k道才能及格,你可以自由安排复习时间,但是只有某道题复习时间严格大于题目分配的分值时这道题才能够被做出来,求最少的,能够保证及格的复习时间。复习时间和分数都是整数。

题解:

为什么给这道题一个博弈的标签呢?因为这道题其实是这样一个博弈过程:

第一回合,玩家A给自己的n个题分配复习时间

第二回合,玩家B拿到m个分数,去给题目分配分数,卡A的复习成果,只要分数和复习时间完全一样就相当于卡掉了,至少卡掉n-k+1个题B就获胜

明白了吧,学生对于题目分数分配的完全未知,其实就相当于出题老师对于学生的复习时间分配完全已知。(这有点和信息论连接起来了,以后慢慢分析)

如果你是B,怎么卡A呢?肯定是找到A复习时间最少的n-k+1个题,把m分全用在上面,都卡掉就行了。

所以,你作为A,只要保证自己复习时间最短的n-k+1道题,总和大于m就行了,这样这些题中至少有一道题B卡不掉,而B更没法舍近求远地去卡复习时间更多的题。

所以,复习时间较少的n-k+1道题,总花费时间m+1,所以复习时间第n-k+1少的题需花费$\left \lceil \frac{m+1}{n-k+1} \right \rceil$

剩下的k-1题均花费$\left \lceil \frac{m+1}{n-k+1} \right \rceil$时间来复习。

#include<bits/stdc++.h>
#define LL long long
using namespace std; int T;
LL n,m,k; int main()
{
cin>>T;
while(T--)
{
cin>>n>>m>>k;
cout<<(m/(n-k+)+)*(k-)+m+<<endl;
}
return ;
}

hdu多校第七场 1006(hdu6651) Final Exam 博弈的更多相关文章

  1. hdu多校第七场 1011 (hdu6656) Kejin Player 概率dp

    题意: 一个游戏,有许多关,到下一关要花费金钱,做出尝试,有概率成功,若成功则到达下一关,若失败则停在此关或退回到前面某关,询问第l关到第r关的期望费用 题解: 显然,第r关到第l关的费用是dp[r] ...

  2. hdu多校第五场1006 (hdu6629) string matching Ex-KMP

    题意: 给你一个暴力匹配字符串公共前缀后缀的程序,为你对于某个字符串,暴力匹配的次数是多少. 题解: 使用扩展kmp构造extend数组,在扩展kmp中,设原串S和模式串T. extend[i]表示T ...

  3. hdu多校第三场 1006 (hdu6608) Fansblog Miller-Rabin素性检测

    题意: 给你一个1e9-1e14的质数P,让你找出这个质数的前一个质数Q,然后计算Q!mod P 题解: 1e14的数据范围pass掉一切素数筛法,考虑Miller-Rabin算法. 米勒拉宾算法是一 ...

  4. 2018 HDU多校第四场赛后补题

    2018 HDU多校第四场赛后补题 自己学校出的毒瘤场..吃枣药丸 hdu中的题号是6332 - 6343. K. Expression in Memories 题意: 判断一个简化版的算术表达式是否 ...

  5. 2018 HDU多校第三场赛后补题

    2018 HDU多校第三场赛后补题 从易到难来写吧,其中题意有些直接摘了Claris的,数据范围是就不标了. 如果需要可以去hdu题库里找.题号是6319 - 6331. L. Visual Cube ...

  6. [2019杭电多校第七场][hdu6651]Final Exam

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6651 题意:n个科目,总共m分,通过一科需要复习花费科目分数+1分钟,在不知道科目分数的情况下,问最少 ...

  7. 2014多校第七场1005 || HDU 4939 Stupid Tower Defense (DP)

    题目链接 题意 :长度n单位,从头走到尾,经过每个单位长度需要花费t秒,有三种塔: 红塔 :经过该塔所在单位时,每秒会受到x点伤害. 绿塔 : 经过该塔所在单位之后的每个单位长度时每秒都会经受y点伤害 ...

  8. 2014多校第七场1003 || HDU 4937 Lucky Number

    题目链接 题意 : 给定一个十进制n,让你转化成某个进制的数,让这个数只包含3 4 5 6这些数字,这个进制就成为n的幸运数字,输出有多少幸运数字,例如19,5进制表示是34,所以5是19的一个幸运数 ...

  9. 2014多校第四场1006 || HDU 4902 Nice boat (线段树 区间更新)

    题目链接 题意 : 给你n个初值,然后进行两种操作,第一种操作是将(L,R)这一区间上所有的数变成x,第二种操作是将(L,R)这一区间上所有大于x的数a[i]变成gcd(x,a[i]).输出最后n个数 ...

随机推荐

  1. Vue学习笔记【1】——什么是Vue.js

    什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于We ...

  2. 【算法】BitMap

    转自:https://www.seoxiehui.cn/article-45186-1.html 需求: 为满足用户标签的统计需求,小灰利用Mysql设计了如下的表结构,每一个维度的标签都对应着Mys ...

  3. delphi 给程序加托盘图标

    一些程序运行时,会在桌面的右下角显示一个图标(任务栏的右边),这类图标称为 托盘.托盘是一个PNotifyIconDataA类型的结构,要增加托盘图标其实就是对结构PNotifyIconDataA的操 ...

  4. NX二次开发-用户自定义资源栏选项卡RegisterActivationCallback

    最近在研究UGOPEN文件夹里的例子,发现从NX10版开始可以用户自定义资源栏选项卡了,NX10以下也可以做,但是需要反编译DLL调内部函数,这个只有高手才会,我是不会弄. 以前看过有人把标准件库做到 ...

  5. css3 动画+动画库

    css3 动画 实现原理 1.transition 过渡:https://www.runoob.com/cssref/css3-pr-transition.html 语法:( transition的 ...

  6. WebStorm编辑器

    Webstorm的安装和免费使用 IntelliJ IDEA 注册码 (webstorm注册码):http://idea.lanyus.com/ (已经不能获取注册码了,之前的注册码可以重复使用) 安 ...

  7. 剑指offer——二进制中1的个数(c++)

    题目描述实现一个函数,输入一个整数,输出该数二进制表示中1的个数.例如,把9表示成二进制是1001,则输出为2 常规解法首先把n和1做位运算,判断n的最低位是不是1,然后把1左移一位得到2,再把n和2 ...

  8. (转)OpenFire源码学习之十二:HttpBind&Script Syntax

    转:http://blog.csdn.net/huwenfeng_2011/article/details/43417343 HttpSessionManager 该类管理所有通过httpbing连接 ...

  9. django 重写用户模型 AbstractBaseUser

    https://blog.csdn.net/weixin_40744265/article/details/80745652

  10. 16. Jmeter-监听器

    jmeter-监听器介绍与使用 察看结果树 Summary Report 聚合报告 Backend Listener Aggregate Graph 断言结果 Comparison Assertion ...