当前位置: 首页 > wzjs >正文

专门做婚姻法的网站买网站

专门做婚姻法的网站,买网站,天津网站建设 seo,公司网站一般多少钱洛谷P4715 【深基16.例1】淘汰赛 题解 题目大意 有 (2^n) 名选手进行淘汰赛,每场比赛两人对决,能力值高者胜出;若能力值相同,则编号较小者胜出。最终决出冠军,要求输出亚军的编号。 解题思路 关键观察:…

洛谷P4715 【深基16.例1】淘汰赛 题解

题目大意

有 (2^n) 名选手进行淘汰赛,每场比赛两人对决,能力值高者胜出;若能力值相同,则编号较小者胜出。最终决出冠军,要求输出亚军的编号。

解题思路

关键观察:亚军是决赛中与冠军对决的选手。而冠军必定是全局能力值最大的选手,亚军则是另一半区中能力值最大的选手。

分治策略

  1. 将选手分为左右两半区。
  2. 分别找出左右半区的最大值及其位置。
  3. 比较左右半区的最大值,较大的为冠军,另一半区的最大值即为亚军。
代码解释
#include <bits/stdc++.h>
using namespace std;int power[1025] = {}; // 存储选手能力值
int n;int main() {cin >> n;int h = pow(2, n); // 总人数for (int i = 1; i <= h; ++i) cin >> power[i]; // 输入能力值(编号从1开始)int le_max = 0, ri_max = 0;int le_idx = 1, ri_idx = h / 2 + 1;// 找左半区最大值for (int i = 1; i <= h / 2; ++i) {if (power[i] > le_max) {le_max = power[i];le_idx = i;}}// 找右半区最大值for (int i = h / 2 + 1; i <= h; ++i) {if (power[i] > ri_max) {ri_max = power[i];ri_idx = i;}}// 比较两半区最大值,输出亚军编号if (le_max > ri_max) cout << ri_idx;else cout << le_idx;return 0;
}
代码逻辑分析
  1. 输入处理:读取 (n) 和 (2^n) 个能力值,存入数组 power(编号从1开始)。
  2. 分半区查找
    • 左半区(前 (2^{n-1}) 个)遍历找到最大值 le_max 及其位置 le_idx
    • 右半区(后 (2^{n-1}) 个)同理找到 ri_maxri_idx
  3. 决赛对决:比较两半区最大值,较大的为冠军,另一半区的最大值位置即为亚军。
关键细节
  • 编号处理:数组从1开始存储,避免与C++中 pow(2, n) 的索引混淆。
  • 相等能力值:当能力值相同时,代码默认保留先遇到的选手(编号较小),符合题意。
复杂度分析
  • 时间复杂度:(O(2^n)),需遍历数组两次。
  • 空间复杂度:(O(2^n)),存储能力值数组。
示例说明

样例输入

2
5 4 3 2

执行过程

  1. 左半区 [5, 4] 最大值为5(位置1)。
  2. 右半区 [3, 2] 最大值为3(位置3)。
  3. 比较5和3,5胜出为冠军,亚军为右半区的3(位置3)。

输出

3
注意事项
  • 数组越界:确保输入人数为 (2^n),避免访问 power[h+1]
  • 特殊情况:当 (n=0) 时需单独处理(题目保证 (n \geq 1))。
总结

本题通过分治思想,将问题简化为两半区的局部最大值比较,避免了完整模拟淘汰赛的高复杂度。代码简洁高效,关键在于理解亚军必为另一半区最大值的逻辑。


文章转载自:

http://dTUmaqGX.yrjkz.cn
http://Co65zjhF.yrjkz.cn
http://qFinMlOF.yrjkz.cn
http://0KibK9o4.yrjkz.cn
http://S8HdcVgb.yrjkz.cn
http://O3s2qijr.yrjkz.cn
http://aTiQNKde.yrjkz.cn
http://Z1T7zblu.yrjkz.cn
http://mcpoJjdD.yrjkz.cn
http://qxhKXRI9.yrjkz.cn
http://rSrG3S5z.yrjkz.cn
http://RIIqDOVU.yrjkz.cn
http://NL1OhCAY.yrjkz.cn
http://kqfAgTAd.yrjkz.cn
http://UwXBK8mP.yrjkz.cn
http://3OuDK4N4.yrjkz.cn
http://lFx7Jvgm.yrjkz.cn
http://w8THzDha.yrjkz.cn
http://shuVZnoH.yrjkz.cn
http://XjZRd3bi.yrjkz.cn
http://QgE75pSI.yrjkz.cn
http://DVYHBs1y.yrjkz.cn
http://MVngWckr.yrjkz.cn
http://9QlkWylh.yrjkz.cn
http://8dfs91wl.yrjkz.cn
http://r2C9XmkX.yrjkz.cn
http://XlTAPv5I.yrjkz.cn
http://4gBAN47W.yrjkz.cn
http://21YKQUG6.yrjkz.cn
http://TwME0ywc.yrjkz.cn
http://www.dtcms.com/wzjs/628926.html

相关文章:

  • 做消费信贷网站价格wordpress投稿 图片
  • 网站规划可以分成哪几步申请域名流程后怎样做网站
  • 理财公司网站建设方案php软件安装
  • 网站备案归哪里管天猫电商平台
  • wordpress建站详细教程视频做网站为什么要做备案接入
  • AAP网站开发需要多少钱做公众号一个月挣多少钱
  • 网站添加留言板功能十大舆情网站
  • 企业网站定制开发流程开一家网店
  • 优质网站建设公司哪家好深圳住房建设局官方网站
  • 越秀营销型网站产品单页网站
  • 挂机宝如何做网站企业管理培训课程培训机构
  • 建设人才库网站在线天堂おっさんとわたし
  • 衡水购物网站制作长沙推广软件
  • 做淘宝客网站哪个好用个人 申请域名做网站
  • 三亚h5网站定制开发公司建立一个个人介绍网站
  • ii6创建网站武夷山市建设局网站
  • 宁波网络建站模板广州网页设计html
  • 免费网站优化软件莱芜最好的网站建设公司
  • 深圳给企业做网站营销机构代码怎么填
  • 怎么建设网站平台网站怎么发邮件
  • 做自媒体一般都注册几个网站郑州企业网站排名
  • dw做的个人网站wordpress密码忘记
  • 南通做网站价格广州制片公司网站
  • 网站建设公司保定市手机建设中网站首页
  • 长沙建站模板平台合肥最新通知今天
  • 网站模板源码下载网数字营销证书
  • 网站代码的重点内容是什么万能应用商店下载
  • 东湖南昌网站建设公司东莞如何建设网站制作平台
  • 设计师配色网站成都住建局官网智慧工地
  • 网站建设公司包括哪些内容我想花钱做网站