P8736 [蓝桥杯 2020 国 B] 游园安排
题目描述
L \mathrm{L} L 星球游乐园非常有趣,吸引着各个星球的游客前来游玩。小蓝是 L \mathrm{L} L 星球 游乐园的管理员。
为了更好的管理游乐园,游乐园要求所有的游客提前预约,小蓝能看到系统上所有预约游客的名字。每个游客的名字由一个大写英文字母开始,后面跟 0 0 0 个或多个小写英文字母。游客可能重名。
小蓝特别喜欢递增的事物。今天,他决定在所有预约的游客中,选择一部分游客在上午游玩,其他的游客都在下午游玩,在上午游玩的游客要求按照预约的顺序排列后,名字是单调递增的,即排在前面的名字严格小于排在后面的名字。
一个名字 A A A 小于另一个名字 B B B 是指:存在一个整数 i i i,使得 A A A 的前 i i i 个字母与 B B B 的前 i i i 个字母相同,且 A A A 的第 i + 1 i+1 i+1 个字母小于 B B B 的第 i + 1 i+1 i+1 个字母。(如果 A A A 不存在第 i + 1 i+1 i+1 个字母且 B B B 存在第 i + 1 i+1 i+1 个字母, 也视为 A A A 的第 i + 1 i+1 i+1 个字母小于 B B B 的第 i + 1 i+1 i+1 个字母)
作为小蓝的助手,你要按照小蓝的想法安排游客,同时你又希望上午有尽量多的游客游玩,请告诉小蓝让哪些游客上午游玩。如果方案有多种,请输出上午游玩的第一个游客名字最小的方案。如果此时还有多种方案,请输出第一个游客名字最小的前提下第二个游客名字最小的方案。如果仍然有多种,依此类推选择第三个、第四个……游客名字最小的方案。
输入格式
输入包含一个字符串,按预约的顺序给出所有游客的名字,相邻的游客名字之间没有字符分隔。
输出格式
按预约顺序输出上午游玩的游客名单,中间不加任何分隔字符。
样例 #1
样例输入 #1
WoAiLanQiaobei
样例输出 #1
AiLanQiaobei
提示
对于 20 % 20 \% 20% 的评测数据, 输入的总长度不超过 20 20 20 个字母。
对于 50 % 50 \% 50% 的评测数据, 输入的总长度不超过 300 300 300 个字母。
对于 70 % 70 \% 70% 的评测数据, 输入的总长度不超过 10000 10000 10000 个字母。
对于所有评测数据, 每个名字的长度不超过 10 10 10 个字母, 输入的总长度不超过 1 0 6 10^6 106 个字母。
蓝桥杯 2020 年国赛 B 组 G 题。
题目解读
求一些字符串的LIS(最长上升子序列)
算法分析
先按题目给出的,大写字母开头的子串是人名,把字符串分割成若干个子串,每串是由大写字母开头的,中间没有其他大写字母。
然后用 DP 大法算出 LIS 长度
由于数据大,要有二分优化(不然等着 TLE吧)
用 lower_bound 函数优化每一次更新
连我这种蒟蒻都会的 DP
这就完美的 AC 了
虽然题目说用字典树(Trie),但完全不需要
#include<bits/stdc++.h>
using namespace std;
string s,a[1000010],dp[1000010],f[1000010];
int n=0,maxl=0,t=0;
int main()
{ios::sync_with_stdio(false); //优化cincout(其实没必要)cin>>s;int p=s.size();for(int i=0;i<p;i++) //拆解成若干个子串 {if(s[i]<'a') {a[++n]=s[i];}else {a[n]+=s[i];}}for(int i=1;i<=n;i++) //DP{t=lower_bound(dp+1,dp+maxl+1,a[i])-dp;maxl=max(maxl,t);dp[t]=a[i];f[t]=f[t-1]+a[i];}cout<<f[maxl];return 0; //完结撒花
}
最近甲流,写不了代码,这是最后一篇存货
下一次更新估计要等下次 周五
相关文章:
P8736 [蓝桥杯 2020 国 B] 游园安排
题目描述 L \mathrm{L} L 星球游乐园非常有趣,吸引着各个星球的游客前来游玩。小蓝是 L \mathrm{L} L 星球 游乐园的管理员。 为了更好的管理游乐园,游乐园要求所有的游客提前预约,小蓝能看到系统上所有预约游客的名字。每个游客的名字由一…...
初识Docker-什么是docker
Docker是一个快速交付应用、运行应用的技术 目录 一、Docker 二、运用场景 一、什么是Docker?它的作用是什么? Docker如何解决大型项目依赖关系复杂,不同组件依赖的兼容性问题? Docker允许开发中将应用、依赖、函数库、配置一起打包&…...
maven的pom.xml设置本地仓库
配置 在Maven项目中,您可以在pom.xml文件中配置本地仓库的路径。在pom.xml文件中,您可以添加以下配置来指定本地仓库的路径: <project>...<repositories><repository><id>local-repo</id><url>file://…...
Qt获取屏幕DPI缩放比
获取屏幕缩放比 网上很多代码是用 logicalDotsPerInch 除以 96 来获取屏幕缩放比: // Windows 除以 96,macOS 除以 72 qreal factor window->screen()->logicalDotsPerInch() / 96.0; 当使能了缩放适配后,logicalDotsPerInch 值就不…...
Spring MVC控制层框架
三、Spring MVC控制层框架 目录 一、SpringMVC简介和体验 1. 介绍2. 主要作用3. 核心组件和调用流程理解4. 快速体验 二、SpringMVC接收数据 1. 访问路径设置2. 接收参数(重点) 2.1 param 和 json参数比较2.2 param参数接收2.3 路径 参数接收2.4 json参…...
vmware安装银河麒麟V10高级服务器操作系统
vmware安装银河麒麟V10高级服务器操作系统 1、下载银河麒麟V10镜像2、VMware安装银河麒麟V10高级服务器操作系统2.1、新建虚拟机2.2、安装虚拟机 3、配置银河麒麟V10高级服务器操作系统3.1、安装vmware tools3.2、配置静态IP地址 和 dns3.3、查看磁盘分区3.4、查看系统版本 1、…...
掌握Jenknis基础概念
目录 任务(Jobs) 构建(Builds) 触发器(Triggers) 构建环境(Build Environment): 插件(Plugins): 参数化构建(Paramet…...
AWS 知识二:AWS同一个VPC下的ubuntu实例通过ldapsearch命令查询目录用户信息
前言: 前提:需要完成我的AWS 知识一创建一个成功运行的目录。 主要两个重要:1.本地windows如何通过SSH的方式连接到Ubuntu实例 2.ldapsearch命令的构成 一 ,启动一个新的Ubuntu实例 1.创建一个ubuntu实例 具体创建实例步骤我就不…...
Ubuntu 常用命令之 fdisk 命令用法介绍
📑Linux/Ubuntu 常用命令归类整理 fdisk 是一个用于处理磁盘分区的命令行工具,它在 Linux 系统中广泛使用。fdisk 命令可以创建、删除、更改、复制和显示硬盘分区,以及更改硬盘的分区 ID。 fdisk 命令的常用参数如下 -l:列出所…...
论文中公式怎么降重 papergpt
大家好,今天来聊聊论文中公式怎么降重,希望能给大家提供一点参考。 以下是针对论文重复率高的情况,提供一些修改建议和技巧,可以借助此类工具: 论文中公式怎么降重 一、引言 在论文撰写过程中,公式是表达学…...
27. 过滤器
Filter(过滤器)简介 Filter 的基本功能是对 Servlet 容器调用 Servlet 的过程进行拦截,从而在 Servlet 进行响应处理的前后实现一些特殊的功能。在 Servlet API 中定义了三个接口类来开供开发人员编写 Filter 程序:Filter, FilterChain, FilterConfigFi…...
做一个wiki页面是体验HTML语义的好方法
HTML语义:如何运用语义类标签来呈现Wiki网页 在上一篇文章中,我花了大量的篇幅和你解释了正确使用语义类标签的好处和一些场景。那么,哪些场景适合用到语义类标签呢,又如何运用语义类标签呢? 不知道你还记不记得在大…...
金融CRM有用吗?金融行业CRM有哪些功能
市场形式波诡云谲,金融行业也面临着资源体系分散、竞争力后继不足、未知风险无法规避等问题。金融企业该如何解决这些问题,或许可以了解一下CRM管理系统,和其提供的金融行业CRM解决方案。 金融行业是银行业、保险业、信托业、证券业和租赁业…...
@XmlAccessorType+@XmlElement完美解决Java类到XML映射问题
前言: 最近项目在做静态代码扫描的时候,出现Java类中成员变量命名的问题,开头字母必须小写,但是这个类成员是对接其他公司的字段,对方提供的请求格式是XML,必须将Java类转化为XML的格式,而且这…...
软件渗透测试有哪些测试流程?权威安全测试报告的重要性
软件渗透测试也是安全测试的一种,是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法。作为网络安全防范的一种新技术,对于网络安全组织具有实际应用价值。 一、软件渗透测试的过程 软件渗透测试的过程通常包括四个主…...
安防视频融合云平台/智慧监控平台EasyCVR如何添加验证码调用接口?
安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…...
浏览器输入一个url,它的解析过程
URL解析: 浏览器首先解析URL,提取其中的协议(例如,HTTP、HTTPS)、域名和路径等信息。这个过程被称为URL解析。 DNS解析: 浏览器会检查域名的IP地址是否已经缓存。如果没有缓存或者缓存已经过期,…...
第29节: Vue3 列表渲染
在UniApp中使用Vue3框架时,你可以使用列表渲染语法来动态地渲染一个列表。下面是一个示例,演示了如何在UniApp中使用Vue3框架使用列表渲染: <template> <view> <button click"addItem">Add Item</button&g…...
CloudPulse:一款针对AWS云环境的SSL证书搜索与分析引擎
关于CloudPulse CloudPulse是一款针对AWS云环境的SSL证书搜索与分析引擎,广大研究人员可以使用该工具简化并增强针对SSL证书数据的检索和分析过程。 在网络侦查阶段,我们往往需要收集与目标相关的信息,并为目标创建一个专用文档,…...
【网络安全】学习Web安全必须知道的一本书
【文末送书】今天推荐一本网络安全领域优质书籍。 目录 正文实战案例1:使用Docker搭建LAMP环境实战案例2:使用Docker搭建LAMP环境文末送书 正文 学习Web安全离不开Web,那么,需要先来学习网站的搭建。搭建网站是每一个Web安全学习…...
从概念到生产:使用快马AI生成企业级开yun微服务实战代码
今天想和大家分享一个实战经验:如何用InsCode(快马)平台快速搭建一个生产级可用的微服务项目。这个项目是一个产品目录服务,但重点不在于业务逻辑,而是如何集成企业开发中那些真正实用的技术栈。 项目骨架搭建 首先用Spring Initializr创建…...
保姆级教程:用C++和Eigen库手搓一个URDF机器人正解器(以Franka Panda为例)
从零实现URDF机器人正解器:C与Eigen实战指南(Franka Panda案例) 机械臂末端执行器的精准定位是机器人控制的基础。本文将带你用C和Eigen库,不依赖ROS等框架,从零构建一个完整的URDF解析与正运动学计算系统。我们会以F…...
基于信息论的计算成像系统设计与优化
成像系统中的编码器(光学系统)将物体映射为无噪图像,噪声会将这些图像污染为测量值。我们的信息估计器仅利用这些含噪测量值和噪声模型,来量化测量值区分不同物体的能力。 作者:Henry Pinkard, Leyla Kabuli, Eric Mar…...
深入解析MCU Systick:从基础配置到精准延时与系统时间获取实战
1. Systick定时器基础解析 Systick是Cortex-M内核内置的24位递减计数器,堪称MCU的"心跳发生器"。我第一次在STM32项目中使用它时,就像发现了一个隐藏的瑞士军刀——简单却功能强大。这个看似简单的定时器,实际上承担着三大核心功能…...
从CVE-2023-3450看锐捷RG-BCR860路由器:一次网络诊断功能引发的命令注入实战剖析
1. 漏洞背景与设备介绍 锐捷RG-BCR860是面向中小型商业场景设计的云路由器,主打简单易用的中文Web管理界面。这款设备常见于连锁餐饮、快捷酒店等需要稳定网络环境的场所,最大支持150台终端同时接入。作为一款商用设备,它内置了安全审计模块和…...
MATLAB计时函数全解析:从tic/toc到cputime,新手到高手必知的效率工具箱
MATLAB计时函数全解析:从tic/toc到cputime,新手到高手必知的效率工具箱 在数据科学与工程领域,代码执行效率直接影响研究进度与项目成败。想象这样一个场景:你的仿真模型运行了8小时后突然崩溃,却无法定位性能瓶颈&am…...
MMA7660FC三轴加速度计嵌入式驱动库设计与应用
1. 项目概述Grove_3-Axis_Digital_Accelerometer_MMA7660FC_Library 是专为 Seeed Studio Grove 系列模块中 MMA7660FC 三轴数字加速度传感器设计的嵌入式驱动库。该库面向基于 ARM Cortex-M 架构(如 STM32F0/F1/F4/L0/L4 系列)的微控制器平台࿰…...
CoPaw赋能智慧医疗:辅助电子病历分析与报告生成
CoPaw赋能智慧医疗:辅助电子病历分析与报告生成 1. 医疗文书处理的痛点与机遇 早上8点,张医生刚走进诊室,电脑上已经堆积了30多份待处理的电子病历。每份病历都包含患者主诉、检查结果、既往病史等非结构化文本,需要人工提取关键…...
电路原理与情感关系的电子工程解读
电子工程视角下的电路与人生哲学1. 电路元件与情感关系的类比分析1.1 信号放大器与初恋心理初恋阶段的心理状态类似于简单的信号放大器系统。在这个模型中,情感输入信号被高度放大,微小的快乐信号能产生极大的幸福感输出,同样微小的伤害信号也…...
如何快速解锁网易云NCM加密音乐:ncmdump完整实战指南
如何快速解锁网易云NCM加密音乐:ncmdump完整实战指南 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾经下载了网易云音乐却发现那些.ncm格式的音乐文件只能在特定软件中播放?ncmdump就是你的数字音乐…...
