题目链接:BZOJ - 1034

题目分析

这道题和田忌赛马的典故很相似。

先要将两队的队员都按照水平从小到大分别排序。

然后每次尝试用我方最弱的队员赢对方最弱的队员,或者用我方最强的队员赢对方最强的队员。

如果都不行,就用我方最弱的队员对抗对方最强的队员。

这样求出的就是我方的最高分。

由于进行 n 轮比赛之后,双方的比分和为 2n ,所以我方的最低分就是 2n - 对方的最高分。

代码

#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <cmath> using namespace std; const int MaxN = 100000 + 5; int n, Min, Max, Ans;
int A[MaxN], B[MaxN]; inline void Cmp(int x, int y)
{
if (x > y) Ans += 2;
if (x == y) Ans += 1;
} int Solve(int *A, int *B)
{
Ans = 0;
int l1, r1, l2, r2;
l1 = l2 = 1;
r1 = r2 = n;
while (l1 <= r1)
{
if (A[l1] > B[l2]) Cmp(A[l1++], B[l2++]);
else if (A[r1] > B[r2]) Cmp(A[r1--], B[r2--]);
else Cmp(A[l1++], B[r2--]);
}
return Ans;
} int main()
{
scanf("%d", &n);
for (int i = 1; i <= n; ++i) scanf("%d", &A[i]);
for (int i = 1; i <= n; ++i) scanf("%d", &B[i]);
sort(A + 1, A + n + 1);
sort(B + 1, B + n + 1);
printf("%d %d\n", Solve(A, B), 2 * n - Solve(B, A));
return 0;
}

  

[BZOJ 1034] [ZJOI2008] 泡泡堂BNB 【贪心】的更多相关文章

  1. BZOJ 1034: [ZJOI2008]泡泡堂BNB( 贪心 )

    贪心...用最弱的赢最弱的,用最强的赢最强的,否则用最弱的和最强的比... (贴个官方题解:将双方的选手均按从强到弱排序,然后第一次扫描尽可能用当前剩下的选手中能赢对手当前最强选手中最弱的一个去赢得胜 ...

  2. BZOJ 1034: [ZJOI2008]泡泡堂BNB 贪心+排序

    比较神奇的贪心 有点类似于田忌赛马. 如果我方最弱强于对面最弱,则直接最弱pk最弱. 如果我方最强强于对面最强,那么直接最强间pk. 否则,试着用我方最弱 pk 对方最强,看是否能打成平手. code ...

  3. bzoj 1034 [ZJOI2008]泡泡堂BNB——贪心

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1034 原来觉得和 bzoj4977跳伞求生 有点像(虽然还没做). 所以对于a[ ]从小到大 ...

  4. bzoj 1034: [ZJOI2008]泡泡堂BNB 貪心

    1034: [ZJOI2008]泡泡堂BNB Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1398  Solved: 727[Submit][Sta ...

  5. BZOJ 1034 [ZJOI2008]泡泡堂BNB

    1034: [ZJOI2008]泡泡堂BNB Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1757  Solved: 928[Submit][Sta ...

  6. bzoj 1034 [ZJOI2008]泡泡堂BNB(贪心)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1034 [题意] 给两个序列以任意顺序比较,求出最大和最小得分. [思路] 排序后使用贪 ...

  7. bzoj 1034: [ZJOI2008]泡泡堂BNB【贪心】

    是贪心 先把两个数组排序,然后贪心的选让a数组占优的(如果没有就算输),这是最大值,最小值是2n-贪心选b数组占优 #include<iostream> #include<cstdi ...

  8. 1034: [ZJOI2008]泡泡堂BNB

    1034: [ZJOI2008]泡泡堂BNB Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3234  Solved: 1655[Submit][St ...

  9. [BZOJ1034][ZJOI2008]泡泡堂BNB 贪心

    1034: [ZJOI2008]泡泡堂BNB Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3414  Solved: 1739 [Submit][ ...

随机推荐

  1. LTTng 简介&使用实战

    一.LTTng简介 LTTng: (Linux Trace Toolkit Next Generation),它是用于跟踪 Linux 内核.应用程序以及库的系统软件包.LTTng 主要由内核模块和动 ...

  2. 使用java进行文件编码转换

    在开发过程中,可能会遇到文件编码的转换,尽管说开发工具eclipse能够转换编码,可是有的情况却非常不方便.比方,原来文件本身的编码是GBK,如今要转换成UTF-8,假设直接在eclipse中把文件编 ...

  3. SQLServer怎样导入excel

    --从Excel文件里,导入数据到SQL数据库中,非常easy,直接用以下的语句: /*======================================================== ...

  4. 2014-08-05 pig

    Pig的数据类型能够分为两种:一种是scalar类型,包含单一的value,一种是complex类型,包含有其他的类型. 对于scalar类型: int,long,float,double,chara ...

  5. N!末尾有多少个零

    题目一:210!最后结果有几个零. 请自己思索10分钟以上再看解释 凡是这种题目必有规律可言, 关键是你找到这个规律的恒心.可采用笨拙的方法思考. 1!  =  1                   ...

  6. Keepalived+Nginx+Tomcat配置高可用负载均衡系统示例

    前言 此示例为keepalived+nginx+tomcat的基础配置示例,某些特定配置此例中不会出现,在示例中会用到三个虚拟机:两个纯命令行用于模拟服务端配置,一个带桌面环境的用于模拟客户端访问,这 ...

  7. atlassian-jira-confluence-bitbucket破解

    ==================================================================================================== ...

  8. Linq保留字含义

    using System; using System.Query; using System.Collections.Generic; class app { static void Main() { ...

  9. Google C++ Style Guide在C++11普及后的变化

    转 http://www.cnblogs.com/chen3feng/p/5972967.html?from=timeline&isappinstalled=0&lwfrom=user ...

  10. Binding 中 Elementname,Source,RelativeSource 三种绑定的方式

    在WPF应用的开发过程中Binding是一个非常重要的部分. 在实际开发过程中Binding的不同种写法达到的效果相同但事实是存在很大区别的. 这里将实际中碰到过的问题做下汇总记录和理解. 1. so ...