首页 > 其他分享 >[题解]P6927 [ICPC2016 WF] Swap Space

[题解]P6927 [ICPC2016 WF] Swap Space

时间:2024-08-01 21:52:43浏览次数:12  
标签:ICPC2016 WF geq 12 花费 题解 顺序 额外 按照

思路

显然要按 \(a_i,b_i\) 的大小关系分类:

  1. \(a_i < b_i\):

假令有两对数 \((a_1,b_1),(a_2,b_2)\),且 \(a_1 \leq a_2\)。

  • 如果 \(b_1 \geq a_2\)。则按照 12 的顺序,将带来 \(a_1\) 的花费,以及 \(b_1 + b_2\) 的额外空间;而按照 21 的顺序,将带来 \(a_2\) 的花费,以及 \(b_1 + b_2\) 的额外空间。所以按照 12 顺序更优。

  • 如果 \(b_1 < a_2\)。则按照 12 的顺序,将带来 \(a_1 + a_2 - b_1\) 的花费,以及 \(a_2\) 的额外空间;而按照 21 的顺序,将带来 \(a_2\) 的花费,以及 \(a_2\) 的额外空间。因为 \(a_1 - b_1 < 0\),所以按照 12 顺序更优。

综上,此时按照 \(a_i\) 从小往大排序正确。


  1. \(a_i > b_i\):

假令有两对数 \((a_1,b_1),(a_2,b_2)\),且 \(b_1 \geq b_2\):

  • 如果 \(b_1 \geq a_2\)。则按照 12 的顺序,将带来 \(a_1\) 的花费,以及会减少 \(b_2 - b_1\)

标签:ICPC2016,WF,geq,12,花费,题解,顺序,额外,按照
From: https://www.cnblogs.com/WaterSun/p/18337603

相关文章

  • CF553E Kyoya and Train 题解
    Description给定一张\(n\)个点\(m\)条边的无重边无自环的有向图,你要从\(1\)号点到\(n\)号点去。如果你在\(t\)时刻之后到达\(n\)号点,你要交\(x\)元的罚款。每条边从\(a_i\)到\(b_i\),走过它需要花费\(c_i\)元,多次走过同一条边需要多次花费。走过每条边所需......
  • 【问题解决方案】npm install报错问题:npm ERR! - 多种解决方案,总有一种可以解决
    @[toc]1.问题重述安装package.json里面的包,使用npminstall但是报错2.解决方案方案1.确认根目录正确确认自己的目录是根目录(也就是处于./package.json可以找到的位置)例如--根目录----package.json----其他文件----其他文件方案2.确认文件名正确确认自己的pack......
  • P9308 「DTOI-5」#1f1e33 题解
    声明:截止\(2024.8.1\),拿下洛谷最优解最短解,代码长度不到1k。复杂度\(O(n\log\logn)\)。先骂:官方题解菜!这种纯洁的数论题居然敢引入NTT作为标算,说明出题人不会推式子。还有题解区一车\(\log\)的题解凭啥顶那么上面,推的一坨狗屎推出来的复杂度还不优秀。说明:下面除法默......
  • 2024牛客暑期多校训练营6 A.cake(题解)
    A.Cake题意两个人玩游戏,游戏分两阶段第一阶段在一棵有根树上轮流走,走到叶子停止,有根树边上有01标记,记录下走过的01串第二阶段分蛋糕,Oscar按自己的意愿切蛋糕,然后按照第一阶段获得的01串顺序依次拿蛋糕(1代表Grammy拿,0代表Oscar拿)两人都想让自己获得尽量多的蛋糕,......
  • CF1997F Chips on a Line 题解
    注意到操作是可逆的,可以先把所有筹码移动到位置\(1\),再进行若干次操作使筹码数量最小化。那么我们只需要对每一个\(i\)知道有多少种情况把筹码全移动到位置\(1\)后恰好有\(i\)个筹码,和这类情况的最少筹码数。记\(f_i\)表示斐波那契数列的第\(i\)项,显然一个位置\(i\)......
  • Luogu P1613 跑路 题解 [ 蓝 ] [ 倍增 ] [ Floyd 最短路 ] [ 状压 dp ]
    跑路:绝佳倍增好题,思路是化\(2^k\)为\(1\),倍增起预处理作用。最近不知道是撞了什么运,前一脚看的是绿题,写完之后交一发,发现直接被lxl升蓝了,血赚。思路:Floyd首先观察到每次走\(2^k\)的代价为\(1\),我们可以预处理出每次走\(2^i\)能到哪些点。但为了让这题的代码更好实......
  • 题解:CF1015D Walking Between Houses
    题解:CF1015DWalkingBetweenHouses算法模拟,分类讨论分析首先,设每步走的距离为\(t_i\),我们发现\(t_i\)应是满足\(1\let_i\len-1\)的。那么就很容易推出NO的情况:当\(s<k\)时,由于每一步都要至少走一个单位,所以\(k\)次步数肯定用不完,而题目要求恰好\(k\)次;当......
  • CF716B Complete the Word 题解
    CF716BCompletetheWord题解分析首先观察数据范围是\(50000\),可以考虑\(O(n)\)暴力。在字符串中枚举子串开始的位置\(i\),然后再枚举\(i\)到\(i+25\),开个桶统计每个大写字母出现的次数,如果大于\(1\)就直接break。统计完之后剩下的就都是问号了,可以随便填,所以这个子......
  • P3043 [USACO12JAN] Bovine Alliance G 题解
    P3043[USACO12JAN]BovineAllianceG题目传送门思路首先分情况讨论每种联通块的可能,有三种不同的情况会对答案\(ans\)产生不同的贡献。联通块有环如图,因为每条边都有要有归属,所以环上的边只能全都顺时针或逆时针属于某个点,且不在环上的点仅有一种可能。因此该情况对答......
  • 题解:CF687C The Values You Can Make
    CF687CTheValuesYouCanMake题解题目翻译感觉不明不白的(至少我看了几遍没看懂),这里给个较为清晰的题面。题目描述给你\(n\)个硬币,第\(i\)个硬币有一个价值\(c_i\),你需要从中选出一些价值和为\(k\)的硬币组成一个集合,再输出这个集合中硬币可能组成的价值和。算法动......