P5963 [BalticOI ?] Card 卡牌游戏【来源请求】
[rt](https://www.luogu.com.cn/problem/P5963)
------------
## part1
### 题意简述
给你 $n$ 张纸牌,每张纸牌有两个面。
将 $n$ 张纸牌按一定顺序填入框中。填入卡牌时,不一定需要按照卡牌和框的顺序进行填写(即可以进行位置的调换)。求在一定顺序下式子最小的结果。
### 思路
因为格式是按减和加来回变化的,所以要加的数有 $n/2$ 个,减的也有 $n/2$ 个。因为要结果最小,所以尽量使 $sum_i$ 较大的 $A_i$ 所以得到贪心策略:取卡牌 $sum$ 值大的一半的 $A_i$,放在减号框内,$sum$ 值小的一半的 $B_i$ 放在加号框内,此时的结果最小。
### so
定义一个 $sum_i$ 来存放 $x_i+y_i$ 的值。按 $sum_i$ 排序。选前 $n/2$ 个放入加号框,后 $n/2$ 放入减号框。
## part2
最后直接上代码。
### code
```
#include<bits/stdc++.h>
#define int long long
int n,ans=0;struct node{int a,b;}c[50000009];
int cmp(node x,node y){if((x.a+x.b)<(y.a+y.b)){return 1;}return 0;}
using namespace std;
signed main(){
cin>>n;
for(int i=1;i<=n;i++) cin>>c[i].a>>c[i].b;
sort(c+1,c+1+n,cmp);
for(int i=1;i<=n/2;i++) ans+=min(c[i].a,c[i].b);
for(int i=n/2+1;i<=n;i++) ans-=max(c[i].a,c[i].b);
cout<<ans;
return 0;
}
```
## End
另附上一则温馨提示 $n\leq 5\cdot 10^5$ 且 $|A_i|,|B_i|\leq 10^7$。
P5963 [BalticOI ?] Card 卡牌游戏【来源请求】的更多相关文章
- [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计
源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...
- BZOJ_3191_[JLOI2013]卡牌游戏_概率DP
BZOJ_3191_[JLOI2013]卡牌游戏_概率DP Description N个人坐成一圈玩游戏.一开始我们把所有玩家按顺时针从1到N编号.首先第一回合是玩家1作为庄家.每个回合庄家都会随 ...
- 洛谷 P2059 [JLOI2013]卡牌游戏 解题报告
P2059 [JLOI2013]卡牌游戏 题意 有\(n\)个人玩约瑟夫游戏,有\(m\)张卡,每张卡上有一个正整数,每次庄家有放回的抽一张卡,干掉从庄家起顺时针的第\(k\)个人(计算庄家),干掉的 ...
- bzoj千题计划202:bzoj3191: [JLOI2013]卡牌游戏
http://www.lydsy.com/JudgeOnline/problem.php?id=3191 每个人获胜的概率只与其在排列中与庄家的相对位置有关 dp[i][j] 还剩i个人时,从庄家数第 ...
- 【BZOJ3191】【JLOI2013】卡牌游戏 [DP]
卡牌游戏 Time Limit: 10 Sec Memory Limit: 128 MB[Submit][Status][Discuss] Description N个人坐成一圈玩游戏.一开始我 ...
- TCG卡牌游戏研究:《炉石战记:魔兽英雄传》所做的改变
转自:http://www.gameres.com/665306.html TCG演进史 说到卡牌游戏,大家会联想到什么呢? 是历史悠久的扑克牌.风靡全球的<MTG 魔法风云会>与< ...
- BZOJ 4392 卡牌游戏
Description 奶牛贝茜是卡牌游戏的狂热爱好者, 但是令人吃惊的, 她缺乏对手. 不幸的是, 任何牧 群里的其他牛都不是好对手. 他们实在是太差了 , 实际上, 他们玩卡牌游戏时会遵循一种完全 ...
- [JLOI2013]卡牌游戏 概率DP
[JLOI2013]卡牌游戏 概率DP 题面 \(dfs\)复杂度爆炸,考虑DP.发现决策时,我们只用关心当前玩家是从庄家数第几个玩家与当前抽到的牌是啥.于是设计状态\(f[i][j]\)表示有\(i ...
- [省选联考 2021 A/B 卷] 卡牌游戏
垃圾福建垫底选手来看看这题. 大家怎么都写带 \(log\) 的. 我来说一个线性做法好了. 那么我们考虑枚举 \(k\) 作为翻转完的最小值. 那么构造出一个满足条件的操作,我们在 \(a_i\) ...
- 使用UIKit制作卡牌游戏(三)ios游戏篇
译者: Lao Jiang | 原文作者: Matthijs Hollemans写于2012/07/13 转自朋友Tommy 的翻译,自己只翻译了这第三篇教程. 原文地址: http://www.ra ...
随机推荐
- PPT 编辑顶点
编辑顶点的N种玩法 针对特定的形状进行编辑 选中形状 -> 右键 -> 编辑顶点 如果[编辑顶点]是灰色的,需要上网下一个 office clean touris,清理一下 合并形状:多个 ...
- JAVA 获取 URL 指定参数的值
JAVA 获取 URL 指定参数的值 @Test void regexTest() { String url = "https://www.cnblogs.com/vipsoft/p/152 ...
- C#写日志工具类(新版)
源码:https://gitee.com/s0611163/LogUtil 昨天打算把我以前写的一个C#写日志工具类放到GitHub上,却发现了一个BUG,当然,已经修复了. 然后写Demo对比了NL ...
- Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2) (个人题解)
Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2) A. Prison Break https:// ...
- Vue项目利用axios请求接口下载excel(附前后端代码)
https://blog.csdn.net/aSmallProgrammer/article/details/91440793?utm_medium=distribute.pc_relevant.no ...
- java进阶(15)--DecimalFormat、BigDecimal
一.DecimalFormat(数字格式化) 1.数字格式化的表示: (#) 代表任意数字 (,)代表千分位 (.)代表小数 (0)代表不够时补0 2.示例
- Python数据可视化-地图可视化
Python数据可视化-地图可视化 一.基础地图使用 基础地图演示 二.疫情地图-国内疫情地图 具体代码如下 """ 演示全国疫情可视化地图开发 "" ...
- Linux: CPU C-states
0. Overview There are various power modes of the CPU which are determined based on their current usa ...
- .NET静态代码织入——肉夹馍(Rougamo)发布2.2
肉夹馍(https://github.com/inversionhourglass/Rougamo)通过静态代码织入方式实现AOP的组件,其主要特点是在编译时完成AOP代码织入,相比动态代理可以减少应 ...
- Python毕业设计推荐
今天给大家推荐几个基于python/django的毕业设计/课程设计. 1. 网上商城系统 这是一个基于python+vue开发的商城网站,平台采用B/S结构,后端采用主流的Python语言进行开发, ...