题目背景

还记得 NOIP 2012 提高组 Day1 的国王游戏吗?时光飞逝,光阴荏苒,两年过去了。国王游戏早已过时,如今已被皇后游戏取代,请你来解决类似于国王游戏的另一个问题。

题目描述

皇后有 n 位大臣,每位大臣的左右手上面分别写上了一个正整数。恰逢国庆节来临,皇后决定为 n 位大臣颁发奖金,其中第 i 位大臣所获得的奖金数目为第i-1 位大臣所获得奖金数目与前 i 位大臣左手上的数的和的较大值再加上第 i 位大臣右手上的数。

形式化地讲:我们设第 i 位大臣左手上的正整数为 ai,右手上的正整数为 bi,则第 i 位大臣获得的奖金数目为 ci可以表达为:

当然,吝啬的皇后并不希望太多的奖金被发给大臣,所以她想请你来重新安排一下队伍的顺序,使得获得奖金最多的大臣,所获奖金数目尽可能的少。

注意:重新安排队伍并不意味着一定要打乱顺序,我们允许不改变任何一位大臣的位置。

输入输出格式

输入格式:

第一行包含一个正整数 T,表示测试数据的组数。

接下来 T 个部分,每个部分的第一行包含一个正整数 n,表示大臣的数目。

每个部分接下来 n 行中,每行两个正整数,分别为 ai和 bi,含义如上文所述。

输出格式:

共 T 行,每行包含一个整数,表示获得奖金最多的大臣所获得的奖金数目。

输入输出样例

输入样例#1: 复制

1
3
4 1
2 2
1 2

输出样例#1: 复制

8

输入样例#2: 复制

2
5
85 100
95 99
76 87
60 97
79 85
12
9 68
18 45
52 61
39 83
63 67
45 99
52 54
82 100
23 54
99 94
63 100
52 68

输出样例#2: 复制

528
902

说明

按照 1、2、3 这样排列队伍,获得最多奖金的大臣获得奖金的数目为 10;

按照 1、3、2 这样排列队伍,获得最多奖金的大臣获得奖金的数目为 9;

按照 2、1、3 这样排列队伍,获得最多奖金的大臣获得奖金的数目为 9;

按照 2、3、1 这样排列队伍,获得最多奖金的大臣获得奖金的数目为 8;

按照 3、1、2 这样排列队伍,获得最多奖金的大臣获得奖金的数目为 9;

按照 3、2、1 这样排列队伍,获得最多奖金的大臣获得奖金的数目为 8。

当按照 3、2、1 这样排列队伍时,三位大臣左右手的数分别为:

(1, 2)、(2, 2)、(4, 1)

第 1 位大臣获得的奖金为 1 + 2 = 3;

第 2 位大臣获得的奖金为 max{3, 3} + 2 = 5;

第 3 为大臣获得的奖金为 max{5, 7} + 1 = 8。

对于全部测试数据满足:T \le 10T≤10,1 \le n \le 20\ 0001≤n≤20 000,1 \le a_i, b_i \le 10^91≤ai​,bi​≤109。


玄学:

推导过程在这里:https://blog.csdn.net/liuzibujian/article/details/81435356

最后一步有点看不懂。。。。

#include<bits/stdc++.h>
#define lom  long long
using namespace std;
struct node
{int x,y,d;bool operator <(const node& a)const{//magic,do not touch!if (d!=a.d) return d<a.d;if (d<=0) return x<a.x;return y>a.y;}
}a[20005];
int main()
{int T;cin>>T;while(T--){int n;lom sum=0,ans=0;cin>>n;for(int i=1;i<=n;i++){cin>>a[i].x>>a[i].y;if (a[i].x>a[i].y) a[i].d=1;else if (a[i].x<a[i].y) a[i].d=-1;else a[i].d=0;}sort(a+1,a+n+1);for(int i=1;i<=n;i++){sum+=a[i].x;ans=max(sum,ans)+a[i].y;}cout<<ans<<endl;}return 0;
}

都是些什么神仙。。

洛谷P2123 皇后游戏相关推荐

  1. 洛谷 P2197 nim游戏

    洛谷 P2197 nim游戏 题目描述 甲,乙两个人玩Nim取石子游戏. nim游戏的规则是这样的:地上有n堆石子(每堆石子数量小于10000),每人每次可从任意一堆石子里取出任意多枚石子扔掉,可以取 ...

  2. 洛谷 P1558 色板游戏

    传送门:洛谷 P1558 色板游戏 算法分析:观察到数据范围:\(1\leq T\leq 30\) ,考虑使用二进制来进行状态压缩 将颜色\(x\)表示为 \(1<<(x-1)\) 即 \ ...

  3. 洛谷 P1129 矩阵游戏

    洛谷 P1129 矩阵游戏 题目链接 题目描述 小 Q 是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏――矩阵游戏.矩阵游戏在一个 n×n 黑白方阵进行(如同国际象棋一般,只是颜色是 ...

  4. 洛谷 P3041 视频游戏的连击Video Game Combos(AC自动机+拓扑排序+数位DP)

    洛谷 P3041 视频游戏的连击Video Game Combos 难度一般,不过这个数位DP其实应该叫做记忆化搜索 题意:玩游戏时可以通过按键组合打出combo技能:然后是已知N个combo的按键方 ...

  5. 动态规划——洛谷_P1057传球游戏

    题目: 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏.游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球, ...

  6. 洛谷——P1000 超级玛丽游戏

    P1000 超级玛丽游戏 题目背景 本题是洛谷的试机题目,可以帮助了解洛谷的使用. 建议完成本题目后继续尝试P1001.P1008. 另外强烈推荐新用户必读贴 题目描述 超级玛丽是一个非常经典的游戏. ...

  7. 洛谷P1000 超级玛丽游戏C++题解

    首先我们看这道题的题目"超级玛丽游戏",第一道题就让我们写个游戏出来.结果点进去一看,顿时觉得这道题是在开玩笑,本题是洛谷的试机题目,可以帮助了解洛谷的使用. 建议完成本题目后继续 ...

  8. 洛谷 P4815 狼人游戏 题解

    洛谷 P4815 [CCO2014] 狼人游戏 首先题目中有 3 3 3 个限制: 没有机器人又被指控又被保护: 没有机器人被指控或保护一次以上: 如果有一个编号为 A A A 机器人指控或保护编号为 ...

  9. 【模拟】洛谷 P1000 超级玛丽游戏

    题目背景 本题是洛谷的试机题目,可以帮助了解洛谷的使用. 建议完成本题目后继续尝试P1001.P1008. 题目描述 超级玛丽是一个非常经典的游戏.请你用字符画的形式输出超级玛丽中的一个场景. *** ...

  10. 洛谷 P1080 国王游戏

    这是一道贪心题,贪心的策略是将大臣们按左右手金币的乘积升序排列,具体证明过程可以参见洛谷大佬的题解,这里就不再赘述了. 因为本菜鸡之前没有接触过高精度运算,对C++的运算符重载也不太熟练,所以正好借此 ...

最新文章

  1. C++从键盘读取字符
  2. (转)ZeroMQ的模式-Requset-Reply
  3. php 调用url field,使用 PHP curl 调用 API,如何传递如下格式的 POSTFIELD?
  4. 如何用Dart写一个单例
  5. mysql存储过程与自定义函数
  6. MyBatis框架学习:<select>节点中的resultType和resultMap属性
  7. python自学入门教程-Python自学入门基础教程-数据类型
  8. HDU4007 Dave [杂题]
  9. STM32 基础系列教程 36 - Lwip_dns
  10. 【深度学习】array, list, tensor,Dataframe,Series之间互相转换总结
  11. git关联远程仓库和删除远程仓库
  12. 如何在没有安全启动或 TPM 2.0 的传统 BIOS 上安装 Windows 11
  13. [swift] LeetCode 347. Top K Frequent Elements
  14. python海龟交易策略_【手把手教你】用Python量化海龟交易法则
  15. 基于node.js的express使用mysql语句在插入数据时防重插入
  16. 路由器k2固件改系统时间
  17. 【Matplotlib:隐藏边框,显示单个网格线,设置刻度间隔,隐藏刻度线】
  18. zend framework 1.5.2 中实现梅花雪1.0树状菜单
  19. 电信客户流失数据分析(二)
  20. PCB线路板的制作工艺流程分享!2021-08-21

热门文章

  1. 微信小程序获取用户微信绑定手机号
  2. LAMP 技术简介(5)
  3. PON光通道损耗的计算
  4. Python 数据获取(四)—— BeautifulSoup获取小说内容
  5. 画圆形图片的几种方式
  6. 设计用于环境监测的无线传感网多跳数据采集、传输系统。在PC机上能显示当前测得的温/湿度、光照等环境信息。当光照超过一定阈值时,感知节点通过LED信号灯给以报警。
  7. 英读廊——随时来串门吧!是真心的邀请,还是塑料的友情?
  8. flex justify-content: space-around;和justify-content: space-evenly;的区别
  9. 我喜欢生命本来的样子--周国平
  10. 浙大计算机就业方向,浙大四大 王牌专业,毕业后工作待遇高,发展前景非常广阔...