洛谷p1309
考虑到在一轮比赛后,胜者组的n人(均加一分)和败者组的n人(均不得分)的相对次序没有发生变化,故比赛每进行一轮,相当于对胜者组和败者组进行一次归并操作。其中,胜者组字在归并前需要先加上本轮获得的分值。

#include<bits/stdc++.h>
using namespace std;
int n,R,Q;
struct node{int s,w,i;
}a[200005];
bool cmp(node x,node y){//按分值确定初始排序if(x.s!=y.s) return x.s>y.s;return x.i<y.i;
}
node winner[100005],loser[100005];
int main(){cin>>n>>R>>Q;//2*n 选手for(int i=1;i<=2*n;i++){a[i].i=i;cin>>a[i].s;}for(int i=1;i<=2*n;i++){cin>>a[i].w;}sort(a+1,a+2*n+1,cmp);while(R--){for(int i=1;i<=n;i++){if(a[2*i].w>a[2*i-1].w){//w两两不同a[2*i].s++;//在进入归并序列前记得先加分swinner[i]=a[2*i];loser[i]=a[2*i-1];}else{a[2*i-1].s++;winner[i]=a[2*i-1];loser[i]=a[2*i];}}int i1=1,i2=1;for(int i=1;i<=2*n;i++){if(i1>n){a[i]=loser[i2];i2++;}else if(i2>n){a[i]=winner[i1];i1++;}else if(winner[i1].s>loser[i2].s||(winner[i1].s==loser[i2].s&&winner[i1].i<loser[i2].i)){a[i]=winner[i1];i1++;}else{a[i]=loser[i2];i2++;}}}cout<<a[Q].i;
}

【n次归并操作】瑞士轮相关推荐

  1. 洛谷 P1309 瑞士轮 归并

    洛谷 P1309 瑞士轮 https://www.luogu.com.cn/problem/P1309 每一轮快排,超时: # include<iostream> # include< ...

  2. 洛谷P1309 瑞士轮【归并排序】

    题目链接:P1309 瑞士轮 程序说明: 卡了一个晚上,思路比较简单但是细节很多,有很多大坑! 每轮比赛结束后都需要对选手的成绩进行排序,这道题不能用STL的sort()或者手写快排进行排序,否则会超 ...

  3. 洛谷 P1309 瑞士轮

    题目链接:https://www.luogu.org/problemnew/show/P1309 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特 ...

  4. 瑞士轮(洛谷-P1309)

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

  5. NOIP2011 瑞士轮 题解

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

  6. [NOIP2011 普及组] 瑞士轮

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

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

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

  8. 洛谷1309 瑞士轮

    洛谷1309 瑞士轮 本题地址: http://www.luogu.org/problem/show?pid=1309 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘 ...

  9. 洛谷排序--瑞士轮(归并排序)

    洛谷排序–瑞士轮(归并排序) 题目背景: 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平 ...

最新文章

  1. Java项目:在线电影售票系统设计和实现(java+Springboot+ssm+mysql+jsp+maven)
  2. glibc和ulibc的区别
  3. 吴恩达机器学习笔记 —— 5 多变量线性回归
  4. jQuery之表格变色
  5. 用Macbook开发桌面应用,使用Alamofire链接.Net Core Webapi的注意事项!
  6. 搞不清边缘计算几款产品差异?动动小手点这里!
  7. VS2008 Qt Designer 中自定义信号槽
  8. win11虚拟机如何安装 Windows11虚拟机安装步骤教程
  9. 中国移动吉比特GM220-S网关改桥接模式
  10. shell编程三大神器之grep
  11. #pragma once 用法总结
  12. 【Wechat】微信支付APIV3(商户) 接入批量转账到零钱
  13. 关于自动化测试的定位及一些思考
  14. 2020年煤矿安全监测监控新版试题及煤矿安全监测监控试题及答案
  15. 查询当前日期是一年中的第多少周
  16. vue实现ToDoList待办事项/清单
  17. 利盟Lexmark Intuition S508 一体机驱动
  18. 使用Numpy创建纯色图片
  19. JAVA获取指定日期
  20. Chrome for Android AutoComplete地址栏地址自动补全功能调研和更新

热门文章

  1. 三菱FX3U通讯(RTU)四台变频器的通讯程序
  2. 袁春栋的MySQL的学习笔记
  3. Angular官网学习笔记
  4. 突破淘宝登录滑块验证反爬,防止识别为Chrome自动控制
  5. 2019年全国正规微交易平台十佳
  6. CAD如何统计各类数据?CAD图块/文字/面积统计教程
  7. 有从事OTT/IPTV的朋友吗?
  8. 互联网+的新零售微信商城
  9. 重新定义高性能计算!AMD全新处理器和显卡CES先睹为快
  10. windows清理_Windows入侵痕迹清理技巧方法总结