纸牌游戏
来源:互联网 发布:问卷网数据导出wps 编辑:程序博客网 时间:2024/04/27 17:55
前言
“发明负数干嘛?用来表示你的颜值与智商。”欢迎来到嘟嘟课堂。今天,我们来讲一讲暴力题——纸牌游戏。
题目描述
Bessie (胡晟智)是一头非常喜欢纸牌的奶牛,虽然她没有大拇指,但她对纸牌有近乎痴迷的喜爱。不幸的是,牛群中的其他牛都不是好的对手。他们的水平真的很差。他们总是以一种完全可预测的方式来玩纸牌!尽管如此,Bessie 仍然可以选择如何获胜。
Bessie 和她的朋友Elsie 在玩一个简单的纸牌游戏,她们拿了一付有2n 张卡片的牌,牌上的数字编号为1- 2n ,并将其均分成两份,一份卡片给Bessie 和一份卡片给Elsie。
然后两人开始玩牌,一共进行n 轮, 在每一轮中,Bessie 和Elsie 都打一张卡,谁的牌大就得一分。
神奇的Bessie 可以预测Elsie 打牌顺序,并且尽可能的想赢取胜利。请确定Bessie可以赢得的最大点数。
输入
第一行一个整数N (1≤N≤50,000).
接下来的N 行是Elsie 将每轮连续的比赛中出的牌。请注意,从这些信息很容易确定Bessie 的卡片
输出
一行给出Bessie 可以得分的最大点数。
样例输入
3
1
6
4
样例输出
2
样例说明
贝西手上的牌是2,3,5,她按照2,3,5 的顺序出牌可以获得2 分。
思路
这道题纯属暴力。首先,我们先将渣渣对手存入a数组(读入),然后将剩余的,就是胡晟智的牌,存入b数组。然后我们来一个一个比较。设i、j两个指针。如果胡晟智的牌大于渣渣对手,就答案+1.否则i指针前移。最后输出答案即可。
代码
var a,b:array[1..100000] of longint; p:array[1..100000] of boolean; i,j,k,n1,n2,ans:longint;procedure sb(l,r:longint);var i,j,k,p:longint;begin i:=l; j:=r; k:=a[(l+r) div 2]; while (i<j) do begin while (a[i]>k) and (i<r) do inc(i); while (a[j]<k) and (l<j) do dec(j); if (i<=j) then begin p:=a[i]; a[i]:=a[j]; a[j]:=p; inc(i); dec(j); end; end; if (i<r) then sb(i,r); if (l<j) then sb(l,j);end;procedure lsb(l,r:longint);var i,j,k,p:longint;begin i:=l; j:=r; k:=b[(l+r) div 2]; while (i<j) do begin while (b[i]>k) and (i<r) do inc(i); while (b[j]<k) and (l<j) do dec(j); if (i<=j) then begin p:=b[i]; b[i]:=b[j]; b[j]:=p; inc(i); dec(j); end; end; if (i<r) then lsb(i,r); if (l<j) then lsb(l,j);end;begin readln(n1); n2:=n1*2; for i:=1 to n1 do begin readln(a[i]); p[a[i]]:=true; end; for i:=1 to n2 do begin if not p[i] then begin inc(k); b[k]:=i; end; end; sb(1,n1); lsb(1,n1); i:=1; j:=1; while (i<=n1) and (j<=n1) do begin if (a[i]<b[j]) then begin inc(i); inc(j); inc(ans); end else inc(i); end; write(ans);end.
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏
- 纸牌游戏开始
- 纸牌游戏思路
- HDU2209--翻纸牌游戏
- Hdu2209 翻纸牌游戏
- uva127-模拟纸牌游戏
- hdu2209翻纸牌游戏
- nyoj-721-纸牌游戏
- UVAOj 127 纸牌游戏
- 翻纸牌游戏
- 前端零基础入门(五):如何在页面当中引用css样式
- 数据库数据采集总结
- UBUNTU14.04-CUDA 7.5安装
- redis | list命令
- Appium简介
- 纸牌游戏
- V4L2详解
- js判断全选反选 多选选中状态隐藏显示div
- vue监听滚动事件 实现某元素吸顶或者固定位置显示
- 数据挖掘之Apriori算法的Python实现
- Android Studio 提交项目到新的Git地址 怎么修改
- java单例模式包抽象类和接口
- 奇怪的数学——写给自己,以防忘记
- HTTP常见状态码