【n次归并操作】瑞士轮
洛谷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次归并操作】瑞士轮相关推荐
- 洛谷 P1309 瑞士轮 归并
洛谷 P1309 瑞士轮 https://www.luogu.com.cn/problem/P1309 每一轮快排,超时: # include<iostream> # include< ...
- 洛谷P1309 瑞士轮【归并排序】
题目链接:P1309 瑞士轮 程序说明: 卡了一个晚上,思路比较简单但是细节很多,有很多大坑! 每轮比赛结束后都需要对选手的成绩进行排序,这道题不能用STL的sort()或者手写快排进行排序,否则会超 ...
- 洛谷 P1309 瑞士轮
题目链接:https://www.luogu.org/problemnew/show/P1309 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特 ...
- 瑞士轮(洛谷-P1309)
题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平,偶然性较低,但比赛过程往往十分 ...
- NOIP2011 瑞士轮 题解
题目 瑞士轮 题目描述 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平,偶然性较低,但比 ...
- [NOIP2011 普及组] 瑞士轮
题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平,偶然性较低,但比赛过程往往十分 ...
- P1309 [NOIP2011 普及组] 瑞士轮-快排+归并排序
[NOIP2011 普及组] 瑞士轮 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较 ...
- 洛谷1309 瑞士轮
洛谷1309 瑞士轮 本题地址: http://www.luogu.org/problem/show?pid=1309 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘 ...
- 洛谷排序--瑞士轮(归并排序)
洛谷排序–瑞士轮(归并排序) 题目背景: 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平 ...
最新文章
- Java项目:在线电影售票系统设计和实现(java+Springboot+ssm+mysql+jsp+maven)
- glibc和ulibc的区别
- 吴恩达机器学习笔记 —— 5 多变量线性回归
- jQuery之表格变色
- 用Macbook开发桌面应用,使用Alamofire链接.Net Core Webapi的注意事项!
- 搞不清边缘计算几款产品差异?动动小手点这里!
- VS2008 Qt Designer 中自定义信号槽
- win11虚拟机如何安装 Windows11虚拟机安装步骤教程
- 中国移动吉比特GM220-S网关改桥接模式
- shell编程三大神器之grep
- #pragma once 用法总结
- 【Wechat】微信支付APIV3(商户) 接入批量转账到零钱
- 关于自动化测试的定位及一些思考
- 2020年煤矿安全监测监控新版试题及煤矿安全监测监控试题及答案
- 查询当前日期是一年中的第多少周
- vue实现ToDoList待办事项/清单
- 利盟Lexmark Intuition S508 一体机驱动
- 使用Numpy创建纯色图片
- JAVA获取指定日期
- Chrome for Android AutoComplete地址栏地址自动补全功能调研和更新