NOIP 真题解析:[NOIP 2004 提高组-T3] 合唱队形

发布时间:2026/8/26 12:16:57

NOIP 真题解析:[NOIP 2004 提高组-T3] 合唱队形
[NOIP 2004 提高组-T3] 合唱队形摘要本题要求从一列同学中选出部分人排成先严格递增后严格递减的合唱队形求最少需要出列的同学人数。核心思路为对每个位置计算其左侧和右侧的最长上升子序列长度以d p l [ i ] d p r [ i ] − 1 dpl[i] dpr[i] - 1dpl[i]dpr[i]−1表示以i ii为峰点时最多可留下的人数最终结果为总人数n nn减去该最大值。题目描述n nn位同学站成一排音乐老师要请其中的n − k n-kn−k位同学出列使得剩下的k kk位同学排成合唱队形。合唱队形是指这样的一种队形设k kk位同学从左到右依次编号为1 , 2 , 1,2,1,2,…, k ,k,k他们的身高分别为t 1 , t 2 , t_1,t_2,t1​,t2​,…, t k ,t_k,tk​则他们的身高满足t 1 ⋯ t i t i 1 t_1 \cdots t_it_{i1}t1​⋯ti​ti1​… t k ( 1 ≤ i ≤ k ) t_k(1\le i\le k)tk​(1≤i≤k)。你的任务是已知所有n nn位同学的身高计算最少需要几位同学出列可以使得剩下的同学排成合唱队形。输入格式共二行。第一行是一个整数n nn2 ≤ n ≤ 100 2\le n\le1002≤n≤100表示同学的总数。第二行有n nn个整数用空格分隔第i ii个整数t i t_iti​130 ≤ t i ≤ 230 130\le t_i\le230130≤ti​≤230是第i ii位同学的身高厘米。输出格式一个整数最少需要几位同学出列。输入输出样例 #1输入 #18 186 186 150 200 160 130 197 220输出 #14说明/提示对于50 % 50\%50%的数据保证有n ≤ 20 n \le 20n≤20。对于全部的数据保证有n ≤ 100 n \le 100n≤100。思路要点本题要求一个最合适的 a[i]使得 [a[i] 左边 a[i] 的数的个数) (a[i] 右边 a[i] 的数个数) ] 最小。反过来想其实就是分别求 a[i] 左边从左往右的最长上升子序列设表示为 dpl[i]与 a[i] 右边从右往左的最长上升子序列设表示为 dpr[i]之和取其最大时的 a[i] 为峰点即可。此时留下来的人数为 dpl[i] dpr[i] - 1用总人数减去最多能留下来的人数即为所求最少出列同学人数。参考代码#includebits/stdc.husingnamespacestd;intn,a[105],dpl[105],dpr[105],maxn,ans;intmain(){cinn;for(inti1;in;i){cina[i];// 从左往右求一遍截至 a[i] 的最长上升子序列dpl[i]1;// 初始化 dpl[i] 为 1 (仅含 a[i] 的情况)for(intj1;ji;j){// 枚举 a[i] 左边的元素if(a[j]a[i]){dpl[i]max(dpl[i],dpl[j]1);}}}for(intin;i1;i--){// 从右往左求一遍截至 a[i] 的最长上升子序列dpr[i]1;// 初始化 dpr[i] 为 1 (仅含 a[i] 的情况)for(intjn;ji;j--){// 枚举 a[i] 右边的元素if(a[j]a[i]){dpr[i]max(dpr[i],dpr[j]1);}}// 若选 a[i] 为峰点能留下来的人数为 dpl[i] dpr[i] - 1maxnmax(maxn,dpl[i]dpr[i]-1);}ansn-maxn;// 最少出列学生数 总人数 - 最多留下的人数coutans;return0;}

相关新闻

5G核心网SBA架构实战:基于Open5GS搭建3节点测试环境

5G核心网SBA架构实战:基于Open5GS搭建3节点测试环境

2026/8/23 0:34:34

5G核心网SBA架构实战:基于Open5GS搭建3节点测试环境引言:为什么需要动手搭建5G核心网测试环境?在5G技术快速发展的今天,服务化架构(SBA)已成为5G核心网的标准设计范式。与传统的4G EPC架构不同,SBA将网络功能拆分为独立…

Codex Skills安装系统:Web驱动的技能生命周期管理平台

Codex Skills安装系统:Web驱动的技能生命周期管理平台

2026/8/23 0:34:34

1. 项目概述:这不是一个“插件”,而是一套可复用的自动化能力交付系统你有没有遇到过这样的场景:在 Codex 里反复写同一段代码来调用 GitHub API 获取 PR 列表?或者每次都要手动拼接 OpenAPI Schema 去生成接口测试用例&#xff1…

Windrose专用服务器搭建原理与实战指南

Windrose专用服务器搭建原理与实战指南

2026/8/23 0:34:34

1. 项目概述:为什么Windrose联机服务器不是“装个软件点一下就完事”?Windrose《风启之旅》的联机服务器搭建,表面看是“下载、解压、双击运行”的三步操作,但实际踩坑率远超90%——我帮朋友远程调试过23台不同配置的机器&#xf…

微信小程序自定义导航栏实战:从原理到封装组件与安全区适配

微信小程序自定义导航栏实战:从原理到封装组件与安全区适配

2026/8/26 12:16:25

1. 项目概述:为什么我们需要自定义顶部导航? 做微信小程序开发,尤其是涉及到品牌定制化或者复杂交互页面时,原生导航栏的局限性很快就会暴露出来。默认的 navigationBar 样式单一,颜色固定,无法承载复杂的…

Hadoop面试核心:从架构原理到实战优化的系统性解析

Hadoop面试核心:从架构原理到实战优化的系统性解析

2026/8/26 12:16:25

1. 项目概述:为什么Hadoop面试题值得你花时间准备?最近几年,大数据领域的招聘热度一直没降过,而Hadoop作为大数据生态的基石,几乎是所有相关岗位面试的必考项。我面过不少人,也被人面过,发现一个…

反激变换器从入门到调试:变压器设计、DCM/CCM与RCD缓冲关键点解析

反激变换器从入门到调试:变压器设计、DCM/CCM与RCD缓冲关键点解析

2026/8/26 12:16:25

对于做了几年非隔离DC-DC的工程师来说,第一次接触反激变换器(Flyback Converter),通常会经历一个从“不过如此”到“怎么这么多门道”的心态转变。我最早做的一款产品需要从宽范围市电输入里稳定输出5V/2A,给控制板和通…

高配电脑看直播卡顿掉帧?从浏览器硬解与GPU加速排查解决

高配电脑看直播卡顿掉帧?从浏览器硬解与GPU加速排查解决

2026/8/26 12:16:25

最近在游戏赛事直播的场景里,有一个问题被反复问过很多次:电脑配置明明很高,甚至到了搭载 RTX 5090 这种旗舰显卡的级别,但看弹幕、听声音都正常,画面却像放幻灯片一样一帧一帧卡,切低清晰度也没明显改善。…

SIFT与SURF特征匹配实战:从原理到OpenCV实现全解析

SIFT与SURF特征匹配实战:从原理到OpenCV实现全解析

2026/8/26 12:16:25

简介:图像特征匹配是计算机视觉中的基础技术,旨在从不同时间、角度或光照条件下拍摄的图像中找出对应点,广泛应用于图像拼接、物体识别与三维重建。SIFT与SURF是其中最经典的两种算法:SIFT以尺度不变性和强鲁棒性著称,…

纯CSS实现暗黑模式切换按钮:从状态管理到动画设计

纯CSS实现暗黑模式切换按钮:从状态管理到动画设计

2026/8/26 12:06:25

1. 项目概述:一个按钮背后的设计哲学最近在重构一个老项目的主题系统,暗黑模式切换是绕不开的功能。市面上方案很多,但大多直接塞一个开关图标了事,交互生硬、视觉割裂。我决定自己动手,做一个真正“有趣”的切换按钮—…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/26 1:50:39

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/26 1:49:16

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/24 21:16:09

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

Python random 模块常用函数详解:从入门到实战

Python random 模块常用函数详解:从入门到实战

2026/8/26 0:05:45

目录 1. 引言2. 准备工作3. 基础随机函数4. 序列相关函数5. 随机种子与复现6. 实战案例7. 注意事项8. 常见问题与排查9. 总结 1. 引言 摘要: 本文系统介绍 Python 标准库 random 模块中最常用的随机数生成函数。内容涵盖基础随机函数(random()、unifor…

Hermes接入团队协作后,我推翻了三个效率假设

Hermes接入团队协作后,我推翻了三个效率假设

2026/8/26 0:05:45

聊《Hermes真能提效吗?先看流程里最慢的那一步》之前,先说一句实在的:别急着背概念,先看它在真实项目里到底解决什么问题。摘要团队把 Hermes 接进项目三个月后,交付速度没有提升反而慢了。复盘后发现,最先…

免费AI大模型调教指南:打造专属网文写作助手

免费AI大模型调教指南:打造专属网文写作助手

2026/8/26 0:05:45

1. 先搞清楚“AI小说扩展模式”到底能帮你做什么如果你是一个刚开始写网文、或者卡在L3级别以下的作者,最头疼的可能是情节推进不下去、人物对话干瘪,或者世界观设定不够丰满。自己对着空白文档硬憋,效率很低。这时候,一个能理解你…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/22 4:13:47

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/22 1:32:34

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…