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

网站宣传海报科技狂人

网站宣传海报,科技狂人,网站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://www.dtcms.com/a/478336.html

相关文章:

  • 哪个网站可以查到个人名下公司wordpress文章为啥数据库中找不到
  • 踏上编程征程,与 Python 共舞
  • 工业相机传感器CCD的原理及基础知识
  • 【电脑操作】如何快速去掉win11操作系统下默认的鼠标右键菜单的显示更多选项
  • 漏洞问题解决—SSL/TLS Not Implemented (verified)(中危)
  • 公司怎么建立自己网站WordPress云虚拟空间
  • C++速通Lambda表达式
  • 微企点做的网站怎么去底下的wordpress首页
  • 高防服务器分为哪几种?香港高防服务器有什么特点?
  • 用 PyTorch 实现 MNIST 手写数字识别:从入门到实践
  • 设计模式篇之 代理模式 Proxy
  • 智联招聘网站建设情况wordpress 注册 密码
  • Mobius Protocol:在“去中心化”逐渐被遗忘的时代,重建秩序的尝试
  • 网站制作公司费用wordpress 宋体、
  • 长宁怎么做网站优化好住房城乡建设门户网站
  • MySQL InnoDB Cluster 高可用集群部署与应用实践(下)
  • commons-rng(伪随机数生成)
  • qemu 串口模拟输入的整个流程
  • 在git commit时利用AI自动生成并填充commit信息
  • 【完整源码+数据集+部署教程】可回收金属垃圾检测系统源码和数据集:改进yolo11-AggregatedAtt
  • HakcMyVM-Crack
  • emmc extcsd寄存器
  • 利用径向柱图探索西班牙语学习数据
  • wordpress建淘宝客网站吗上海网站制作最大的公司
  • 定制网站平台的安全设计房地产公司网站建设
  • 筛法(Sieve Method)简介
  • 【论文阅读】基于指数-高斯混合网络的视频观看时间预测的多粒度分布建模-小红书recsys25
  • 网站开发过程模型做电影网站怎么接广告
  • 手机群控软件在游戏运营中的行为模拟技术实践
  • MySQL----触发器