我们先sort排个序,

然后把比一次后的赢的放进b,输的放进c,

可以保证b和c数组都是严格的降序,

然后只要把b、c合并起来就好了。

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
inline int read(){int t=1,num=0;char c=getchar();while(c>'9'||c<'0'){if(c=='-')t=-1;c=getchar();}while(c>='0'&&c<='9'){num=num*10+c-'0';c=getchar();}return num*t;
}
struct yzy{int id,s,w;
}a[200010],b[100010],c[100010];
bool cmp(yzy x,yzy y){if(x.s==y.s)return x.id<y.id;return x.s>y.s;
}
int n,r,q;
void sortt(){int bnt=1,cnt=1;for(int i=1;i<=n+n;i++){if(cmp(b[bnt],c[cnt]))a[i]=b[bnt++];else a[i]=c[cnt++];}
}
int main()
{n=read();r=read();q=read();for(int i=1;i<=n+n;i++)a[i].id=i;for(int i=1;i<=n+n;i++)a[i].s=read();for(int i=1;i<=n+n;i++)a[i].w=read();sort(a+1,a+n+n+1,cmp);b[n+1].s=c[n+1].s=-1;while(r--){for(int i=1;i<=n;i++){if(a[i+i-1].w>a[i+i].w){b[i]=a[i+i-1];c[i]=a[i+i];b[i].s++;}else{b[i]=a[i+i];c[i]=a[i+i-1];b[i].s++;}}sortt();}printf("%d",a[q].id);return 0;
}

本文由Yzyet编写,网址为www.cnblogs.com/Yzyet。非Yzyet同意,禁止转载,侵权者必究。

转载于:https://www.cnblogs.com/Yzyet/p/7160270.html

noip2011——普及组——瑞士轮相关推荐

  1. P1309 [NOIP2011 普及组] 瑞士轮-快排+归并排序

    [NOIP2011 普及组] 瑞士轮 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较 ...

  2. 信息学奥赛一本通 1955:【11NOIP普及组】瑞士轮 | OpenJudge NOI 4.1 4363:瑞士轮 | 洛谷 P1309 [NOIP2011 普及组] 瑞士轮

    [题目链接] ybt 1955:[11NOIP普及组]瑞士轮 OpenJudge NOI 4.1 4363:瑞士轮 洛谷 P1309 [NOIP2011 普及组] 瑞士轮 [题目考点] 1. 归并排序 ...

  3. [NOIP2011 普及组] 瑞士轮

    题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平,偶然性较低,但比赛过程往往十分 ...

  4. P1309 [NOIP2011 普及组] 瑞士轮

    题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平,偶然性较低,但比赛过程往往十分 ...

  5. NOIP2011普及组 瑞士轮

    看到题解区之后明白了自己居然脑补出伪的归并排序了 (我才知道如何在Markdown中打空行了--) 洛谷-题目链接-瑞士轮 不得不说其实这题很好想或者说是灵光一现.但是在写代码的时候不知道脑子是不是抽 ...

  6. P1307 [NOIP2011 普及组] 数字反转(python3实现)

    https://www.luogu.com.cn/problem/P1307 """P1307 [NOIP2011 普及组] 数字反转 https://www.luogu ...

  7. 信息学奥赛一本通 1956:【11NOIP普及组】表达式的值 | 洛谷 P1310 [NOIP2011 普及组] 表达式的值

    [题目链接] ybt 1956:[11NOIP普及组]表达式的值 洛谷 P1310 [NOIP2011 普及组] 表达式的值 [题目考点] 表达式树 由带括号的中缀表达式构建表达式树 [解题思路] 思 ...

  8. 信息学奥赛一本通 1089:数字反转 | 1953:【11NOIP普及组】数字反转 | OpenJudge NOI 1.5 29 | 洛谷 P1307 [NOIP2011 普及组] 数字反转

    [题目链接] ybt 1089:数字反转 ybt 1953:[11NOIP普及组]数字反转 OpenJudge NOI 1.5 29:数字反转 洛谷 P1307 [NOIP2011 普及组] 数字反转 ...

  9. 洛谷——P1307 [NOIP2011 普及组] 数字反转

    P1307 [NOIP2011 普及组] 数字反转 题目描述 给定一个整数,请将该数各个位上数字反转得到一个新数.新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应 ...

  10. 信息学奥赛一本通 1400:统计单词数 | 1954:【11NOIP普及组】统计单词数 | OpenJudge NOI 1.12 05 | 洛谷 P1308 [NOIP2011 普及组] 统计单词数

    [题目链接] ybt 1400:统计单词数 ybt 1954:[11NOIP普及组]统计单词数 OpenJudge NOI 1.12 05:统计单词数 洛谷 P1308 [NOIP2011 普及组] ...

最新文章

  1. matlab7.1(ERROR STARTING DESKTOP)解决
  2. Linux自动化测试monkey,APP自动化测试中Monkey和 MonkeyRunner
  3. 想做网络推广教你如何快速通过SEO考核期呢?
  4. Spring之LoadTimeWeaver——一个需求引发的思考---转
  5. guava-collections
  6. Google Project Zero挖洞经验整理
  7. (转)css中通常会用到浮动与清除,也是一个必须掌握的知识点,概念性的东西不多说,下面举几个例子,来说明它的用法:1.文字环绕效果 2.多个div并排显示 3.清除浮动(默认显示)...
  8. Ubuntu Linux 永山(mount)分
  9. 关于C#中实现两个应用程序消息通讯的问题
  10. oracle em agent,ORACLE 11G EM 配置命令及问题处理
  11. rest get map参数_Spring 5.2.2 集成技术—REST
  12. 安装CocoaPods常见命令
  13. Python学习 :文件操作
  14. php里macd预测算法,股票MACD指标算法公式
  15. 非参数与半参数统计之核函数
  16. “由于无法验证发行者,所以WINDOWS已经阻止此软件”的解决方法
  17. 湖北省创新型中小企业培育申报流程方法及申报时间要求指南
  18. word to sql
  19. 主线程 如何控制 子线程
  20. 声网Agora Signaling SD例子运行方法

热门文章

  1. json文件存储 qt_QT开发(五十一)——QtQuick基础
  2. 极大似然估计_一文理解机器学习中的极大似然估计(MLE)
  3. C++ map转为vector
  4. chainmaker 交易执行失败也会打包到区块 落盘
  5. JavaSE基础——IO流详解(1)字节流和字符流
  6. 基于springboot的社区核酸检测统计管理系统
  7. 基于SSM疫情信息爬取与分析系统
  8. Docker 镜像、容器 常用命令,容器与宿主服务器文件复制
  9. 织梦系统MySQL安装_如何更改已安装的织梦dedecms系统数据库表前缀?
  10. 2018暑假第五周总结(8.6-8.12)