第一篇博客啊……

由于我太弱了,还要去补不全的知识点准备参加人生第一次NOIp,所以第一篇博客就简短一点好了(偷懒就直说吧……)

洛谷P1080传送门

题意概括:

  有N对数ai和bi,以及两个数a0和b0  。现在,你可以将这N对数任意排列,记第i对数前所有a(包括a0)的乘积为si,则对于每对数有v=floor(si/bi)。对于每种排列情况,记MX=max(v)。求min(MX)。

数据范围:

  1 ≤ n ≤1,000,0 < a、b < 10000。

一些瞎BB(题解):

  这种题很明显不是让你列出所有情况(废话)。

  总体来看,求MAX的MIN是一个很大局观的问题,所以看到这种题目的时候,很弱的我只能想到贪心按某种东西把每一对数排个序,但是根本想不到按什么排序。其实是由于我没经验题刷少了……(什么其实,就是刷少了)从这道题来看,这种题目的套路基本上是,转化大局观为局部观,决策出某两个元素的先后顺序。

  估计看到这里,再思考一下,大部分大牛就知道这么写了(大牛还用来看你的题解??)。

  但是像我这样的小蒟蒻还是很难想到的……所以有了后面的继续瞎BB。考虑两个相邻元素i,j。我们现在的目标只是决策出他们的先后。假设i在前比j在前更优。整体上看,他们俩的先后只会改变v和vj  。

  i在前: vi=(si)/bi  vj=(si*ai)/b

  j在前: vj=(sj)/bj  vj=(sj*aj)/bi

   则max((si)/bi,(si*ai)/bj)<max((sj)/bj,(sj*aj)/bi)。显然,两次分别的si ,sj是相同的,且(si*ai)/bj>=(sj)/b,(sj*aj)/bi>=(si)/bi 。所以其实就是(si*ai)/bj <(sj*aj)/bi ,即ai*bi <aj*bj  也就是说,按a、b的乘积从小到大排序就好了。(PS:基于a、b的范围,要写高精度)

  然后可以很不负责地说这题我根本没写……所以没有代码并且可能有说错的地方,欢迎各位大佬指正!


NOIP2012 Day1 T2国王游戏 洛谷P1080的更多相关文章

  1. AC日记——国王游戏 洛谷 P1080

    国王游戏 思路: 贪心+高精: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 1005 struct Dat ...

  2. NOIP2012 DAY1 T2 国王游戏

    题目描述 恰逢 H国国庆,国王邀请n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排成一排,国王站在队伍的最前面 ...

  3. 【流水调度问题】【邻项交换对比】【Johnson法则】洛谷P1080国王游戏/P1248加工生产调度/P2123皇后游戏/P1541爬山

    前提说明,因为我比较菜,关于理论性的证明大部分是搬来其他大佬的,相应地方有注明. 我自己写的部分换颜色来便于区分. 邻项交换对比是求一定条件下的最优排序的思想(个人理解).这部分最近做了一些题,就一起 ...

  4. 【题解】洛谷P1080 [NOIP2012TG] 国王游戏(贪心+高精度)

    次元传送门::洛谷P1080 思路 我们模拟一下只有两个大臣的时候发现 当a1​∗b1​<a2​∗b2​是ans1<ans2 所以我们对所有大臣关于左右手之积进行排序 得到最多钱的大臣就是 ...

  5. [NOIP2012提高组]国王游戏

    题目:洛谷P1080.Vijos P1779.codevs1198. 题目大意:国王和每个大臣左.右手各写了一个数.规定每个大臣得到的金币数为他前面所有人左手的数字的乘积除以他自己右手的数(向下取整) ...

  6. 洛谷P1080 [NOIP2012提高组D1T2]国王游戏 [2017年5月计划 清北学堂51精英班Day1]

    P1080 国王游戏 题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右 手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排 ...

  7. 「洛谷P1080」「NOIP2012提高组」国王游戏 解题报告

    P1080 国王游戏 题目描述 恰逢 \(H\)国国庆,国王邀请\(n\)位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 \( ...

  8. 洛谷P1080 国王游戏 python解法 - 高精 贪心 排序

    洛谷的题目实在是裹脚布 还编的像童话 这题要 "使得获得奖赏最多的大臣,所获奖赏尽可能的少." 看了半天都觉得不像人话 总算理解后 简单说题目的意思就是 根据既定的运算规则 如何排 ...

  9. 【题解】洛谷 P1080 国王游戏

    目录 题目 思路 \(Code\) 题目 P1080 国王游戏 思路 贪心+高精度.按\(a \times b\)从小到大排序就可以了. \(Code\) #include<bits/stdc+ ...

随机推荐

  1. promise封装的ajax

    var  myNewAjax=function(url){ return new Promise(function(resolve,reject){ var xhr = new XMLHttpRequ ...

  2. HTML基础(1)——样式表

    样式表按出现的位置可以分为:行间(内联)样式表,内部样式表,外部样式表. 行间(内联)样式表:由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势. <div style=" ...

  3. IDEA中静态资源无法找到的原因

    IDEA中静态资源无法找到, 原因1:同名的文件但是在不同的包里. 原因2:IDEA重启,web清空缓存. 原因3:错误的文件及路径. 原因4:其他原因排除后,可使用绝招重启试试.

  4. HDU3033 I love sneakers!———分组背包

    这题的动态转移方程真是妙啊,完美的解决了每一种衣服必须买一件的情况. if(a[x][i-c[x][j].x]!=-1) a[x][i]=max(a[x][i],a[x][i-c[x][j].x]+c ...

  5. Docker for windows10 配置阿里云镜像

    到官网下载 并且 安装 Docker for windows  (注意 官方要求 windows10 是企业版才行  天朝你懂的 ) 关于 Docker for windows  要求有  带有 hy ...

  6. .Net文件压缩

    NuGet中下载Ionic.Zip: public static class ZipHelper { /// <summary> /// 压缩文件 /// </summary> ...

  7. 学习笔记60—SPSS

    一.直方图上显示曲线图:打开SPSS ----> 导入数据 ----> 描述统计 ----> 分析 ----> 频率 ----> 图表 ----> 直方图(勾上在直 ...

  8. prometheus告警函数

    PromQL基础     http_request_total{} 瞬时向量表达式,选择当前最新的数据 http_request_total{}[5m] 区间向量表达式,选择以当前时间为基准,5分钟内 ...

  9. pytoch word_language_model 代码阅读

    参考代码地址:https://github.com/pytorch/examples/tree/master/word_language_model /word_language_model/data ...

  10. 选择器:first-child与:last-child失效的解决方法

    作为还在努力练习的代码小白来说,有时类名或者ID名太多很容易就会搞混,为此,在练习中会想着借用多样的选择器来设置而不是每一个标签都设一个类名(Id名),在此次练习中使用选择器:first-child与 ...