首页 > [NOIP2012]国王的游戏
头像 savage
发表于 2019-09-01 11:43:30
题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣 展开全文
头像 戴眼镜的阿蒙
发表于 2020-10-03 14:33:30
国王的游戏 https://ac.nowcoder.com/acm/problem/16561 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。排好队 展开全文
头像 sunrise__sunrise
发表于 2020-05-21 19:35:33
解题思路 贪心+快排对与相邻的两个大臣AB之间。先A后B,先B后A,只会改变这两个人最大值的取值,对其他人没有影响。那么假设第i个人和第i+1个人来看。前面积的值记为S。那么i在前就是,i+1在前就是可以明显发现并且那么如果我们要假设让i在前比i+1在前更好。就是最小值更小那么只有化简一下就是 按照 展开全文
头像 平凡的小白
发表于 2020-05-29 11:47:48
思路:贪心+快排假设除了序列中相邻的两个大臣AB,其它大臣的位置都已经排好了。而AB的先后对前面和后面的结果都不会有影响,这里考虑A排前面最优的条件:左手数值用,右手数值用,表示AB前面大臣左手数值的乘积。1.A排前面时:,。2.B排前面时,,。3.。4.因为,所以不等式3需要满足,即。5.所以只要 展开全文
头像 ziuch
发表于 2020-08-21 16:54:12
题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是: 展开全文
头像 ymx10086
发表于 2022-07-30 22:34:00
上述为引用洛谷题解 说明:高精度计算的板子应提前书写,贪心策略很重要 ">#include<algorithm>//用到sort #include<cstring>//用到memset using namespace std; const int MAXN = 1010, M 展开全文
头像 杜敏行
发表于 2021-11-23 18:40:10
">#include<stdio.h> #include<algorithm> using namespace std; struct node{ int a,b; char cnta[10000],all[10000];//cnta 为前面所有a的乘积的逆序 all为乘 展开全文
头像 Eihuvita.
发表于 2020-05-30 21:02:47
题意 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有 展开全文
头像 LXNHB
发表于 2023-11-27 22:10:13
首先来看怎么确定高精度的位数,最多有1000各大臣,每个大臣左手数字最大为10000,所以相乘的最差结果就是10^4000,也就是至多是一个4000位的数(大臣手中数字不包括10000)。然后就是基本的高精度乘法和高精度除低精度的除法。 #include<bits/stdc++.h> u 展开全文
头像 一只羊蝎子
发表于 2021-01-24 16:40:07
思路: 首先我们清楚,交换任意两个相邻大臣的位置,对其他大臣获得的金币数不会造成影响。题目要求使得获得奖赏最多的大臣,所获奖赏尽可能的少,也就是让最大值尽可能小,并且国王固定在队伍的最前面,所以我们考虑后面的大臣即可。 在n(n≥2)个大臣中找出任意相邻的两个大臣A与B,记他们左右手的值分别为 、 展开全文