bzoj4396[Usaco2015 dec]High Card Wins

题意:

一共有2n张牌,Alice有n张,Bob有n张,每一局点数大的赢。知道Bob的出牌顺序,求Alice最多能赢几局。n≤50000。

题解:

贪心。将Alice和Bob的牌按点数大小排序,然后如果Alice当前牌能赢Bob当前牌就ans++否则就不断调整Bob的当前牌直到Alice当前牌能赢Bob当前牌。

代码:

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <algorithm>
 4 #define inc(i,j,k) for(int i=j;i<=k;i++)
 5 #define maxn 50010
 6 using namespace std;
 7
 8 inline int read(){
 9     char ch=getchar(); int f=1,x=0;
10     while(ch<'0'||ch>'9'){if(ch=='-')f=-1; ch=getchar();}
11     while(ch>='0'&&ch<='9')x=x*10+ch-'0',ch=getchar();
12     return f*x;
13 }
14 int a[maxn],b[maxn],ans,n,tot; bool c[maxn*2];
15 int main(){
16     n=read(); inc(i,1,n)a[i]=read(),c[a[i]]=1; inc(i,1,2*n)if(!c[i])b[++tot]=i; sort(a+1,a+n+1);
17     int p=1,q=1;
18     while(1){
19         while(p<=n&&b[p]<a[q])p++; if(p==n+1)break; ans++; p++; q++;
20     }
21     printf("%d",ans); return 0;
22 }

20160908

转载于:https://www.cnblogs.com/YuanZiming/p/5876058.html

bzoj4396[Usaco2015 dec]High Card Wins*相关推荐

  1. 【dp 贪心】bzoj4391: [Usaco2015 dec]High Card Low Card

    巧妙的贪心 Description Bessie the cow is a huge fan of card games, which is quite surprising, given her l ...

  2. 【bzoj 4390】 [Usaco2015 dec]Max Flow(树上差分)

    4390: [Usaco2015 dec]Max Flow Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 156  Solved: 100 [Sub ...

  3. bzoj4390[Usaco2015 dec]Max Flow*

    bzoj4390[Usaco2015 dec]Max Flow 题意: 给定一棵有N个点的树,所有节点的权值都为0.有K次操作,每次指定两个点s,t,将s到t路径上所有点的权值都加一.请输出K次操作完 ...

  4. bzoj4393[Usaco2015 Dec]Fruit Feast*

    bzoj4393[Usaco2015 Dec]Fruit Feast 题意: 奶牛一开始饱胀值为0,上限为T.每个柠檬派提供a点饱胀值,每个橘子派提供b点饱胀值,有一次机会喝水,使得饱胀值div2.柠 ...

  5. [Usaco2015 dec]Breed Counting

    原题链接https://www.lydsy.com/JudgeOnline/problem.php?id=4397 用线段树维护区间和即可.时间复杂度\(O((N+Q)logN)\). #includ ...

  6. One Card Poker——AtCoder - abc054_a

    题目 Problem Statement Alice and Bob are playing One Card Poker. One Card Poker is a two-player game u ...

  7. hdu1528 Card Game Cheater

    问题描述 Adam and Eve play a card game using a regular deck of 52 cards. The rules are simple. The playe ...

  8. SD card boot and flashing tool for TI davinic DM368

    实验环境: DM368 平台 : LW3xx SD card : Micro SD 128MB HOST : ubuntu 10.04.4 64-bit CROSS_COMPILE : CodeSou ...

  9. java card applet_可多选的javacard applet | 学步园

    可多选的javacard applet,与多个逻辑通道上设置各自不同的applet是有区别的. Java Card 2.2支持逻辑通道(logical channels)的概念,允许最多智能卡中的16 ...

最新文章

  1. c语言 遍历.jpg图像,求指导,如何用c语言实现读取*.raw格式图像
  2. html下拉框传递参数,HTML通过事件传递参数到js详解及实例
  3. 一套提取自 Ant Design 的优质图标
  4. Android Fragment应用实战,使用碎片向ActivityGroup说再见
  5. 盒马销量预测核心算法的技术演进
  6. 最新29刷网课平台系统源码+带教程
  7. 题解 CF1389B 【Array Walk】
  8. Android 获取定位权限,获取位置信息(国家、地区、经纬)
  9. 真·浅谈System.setOut()
  10. InsightFace-Paddle实现人脸比对
  11. Nestjs中的守卫
  12. 计算该年该月该日天数 一年中有 12 个月,而每个月的天数是不一样的。其中大月 31 天,分别为 1,3,5,7,8,10,12 月,小月 30 天,分别 为 4,6,9,11 月。
  13. Python+Zookeeper操作
  14. 大白菜安装linux系统安装教程
  15. 给您简单介绍术业进销存管理系统
  16. 【华为机试真题 Python】窗口滑动和最大值
  17. 银监会出贷后管理新规 防资金空转
  18. 网络与信息安全产品(一)
  19. React路由跳转时通过传参进行动态渲染的方法
  20. RoboMaster 2020机甲大师对抗赛飞手理论测评通过名单

热门文章

  1. 学习 jQuery UI
  2. ECMAScript 6入门
  3. 中国或将于2018年在晶圆代工支出领域位列世界第二
  4. Flutter 仿掘金之动态Tabbar
  5. ES6-const注意
  6. 基础拾遗(1):字符(串)数字互转
  7. [Linux] PHP程序员玩转Linux系列-腾讯云硬盘扩容挂载
  8. Java Semaphore实现线程池任务调度
  9. android Adapter
  10. IPV6 ripng互联