[蓝桥杯2020国赛]游园安排
题目:
题解:
本质就是求最长上升子序列,只不过这里是字符串版本的,我们都知道有n^2的LIS,但其实还有O(nlogn)版本的,详细看这里,套上就行
另外我发现这里竟然有蓝桥杯全套的编程题离谱,贴上本题地址
代码:
#include <iostream>
#include<algorithm>
#include<cstring>
#include<string>
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e6;
string a[maxn];
string b[maxn];
int pos[maxn], ans[maxn];
int main()
{string s;cin >> s;int cnt = 0;for (int i = 0; i < s.size(); i++) {if (s[i] >= 'A' && s[i] <= 'Z') a[++cnt] = s[i];else a[cnt] += s[i];}int len = 1;b[1] = a[1];pos[1] = len;for (int i = 2; i <= cnt; i++) {if (a[i]>b[len]) {//a大于bb[++len] = a[i];//加入bpos[i] = len;//a中第i个数在b中的位置}else {int id = lower_bound(b + 1, b + 1 + len, a[i]) - b;//找到b中大于a[i]的第一个位置b[id] = a[i];//该位置用当前a替换pos[i] = id;}}int tmp = len;string maxx = "Zzzzzzzzzz";for (int i = cnt; i >= 1; i--) {if (!tmp)break;if (pos[i] == tmp && maxx>a[i]) {ans[tmp] = i;--tmp;maxx = a[i];}}for (int i = 1; i <= len; i++) {cout << a[ans[i]];}cout << endl;return 0;
}
[蓝桥杯2020国赛]游园安排相关推荐
- 蓝桥杯2020国赛太原理工学子成绩大跃进
2020年11月14日,第十一届蓝桥杯全国软件和信息技术专业人才大赛个人赛全国总决赛在全国各地多个分赛场同时举行,太原理工大学参加了了在中北大学分赛场的比赛.本次比赛历时4个小时,吸引了来自全国100 ...
- 魔法师盖城墙-第11届蓝桥杯Scratch国赛真题第4题
本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第10 ...
- 模拟昼夜交替-第11届蓝桥杯Scratch国赛真题第1题
本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第13 ...
- 3D打印小猫-第11届蓝桥杯Scratch国赛真题第6题
本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第8讲 ...
- 捉迷藏之二-第10届蓝桥杯Scratch国赛真题第6题程序2
本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第15 ...
- 蓝桥杯嵌入式国赛模块训练之数码管
文章目录 前言 一.电路原理图 1.共阴极数码管 2.SN74LS595N 3. 扩展板跳线帽连接 二.驱动代码 1.seg.h 2.seg.c 总结 前言 数码管是蓝桥杯嵌入式国赛需准备的第一个模块 ...
- 跑酷游戏-第13届蓝桥杯Scratch国赛真题第3题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第27讲. 第13届蓝桥杯青少年组国赛于2022年5月29日举行,形式为在线考试.Scrat ...
- 蓝桥杯嵌入式——第十二届蓝桥杯嵌入式国赛
蓝桥杯嵌入式--第十二届蓝桥杯嵌入式国赛 之前准备省赛的时候用的是旧版的STM32F103,从准备国赛开始就用新版STM32G431平台了,主要是想经过新版的准备学习一下HAL库以及CubeMX的使用 ...
- 蓝桥杯 2015国赛 穿越雷区
蓝桥杯 2015国赛 穿越雷区 题目链接 X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废. 某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负 ...
最新文章
- UnixLinux大学教程 读书笔记【1-3章】
- Linux文件/目录 所有者/所在组
- 根据服务器ip地址查看虚拟目录,IIS虚拟目录实现与文件服务器网络驱动器映射共享...
- Ubuntu文本编辑(vi和nano)命令
- vue res返回html,vue 组件内获取actions的response方式
- 安阳7中计算机绘画知识,安阳工学院绘画专业主修课程有哪些
- 菜鸟学开店—电子称连接标签打印机
- Java数据库操作要点
- go 导出 html 报告(使用 hero 预编译 html 模板引擎)
- UWP的一种下拉刷新实现
- Unity获取IOS端相机权限的状态
- CentOS 7.6安装Mysql5.7
- 如何删除word页眉的横线
- 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(1):二阶与三阶行列式、全排列及其逆序数
- dmac学习之基于shadow register的multi block transfer
- Java中的Collection集合以及Collection集合实现类实例
- easyExcel的一些操作
- 第一篇文章:网络分析仪Agilent E5061A连接电脑
- Mybatis源码解析——入门级
- usb audio设备驱动
热门文章
- 复工之后,如何让自己的时间更值钱
- ubuntu安装matlab2009,Ubuntu中安装Matlab2010a
- java 抽象类与接口区别是什么_JAVA中抽象类与接口的区别,分别在什么情况下使用它们...
- 什么是python扩展库_什么是目前比较常用的Python扩展库管理工具
- 深度学习 占用gpu内存 使用率为0_深度解析MegEngine亚线性显存优化技术
- apache 2.4 httpd.conf 详解_Linux Centos服务子系统详解
- 计算机语言平均数怎么算,使用python怎么求三个数的平均值
- 电影特效用到什么计算机知识,后期影视特效处理知识普及
- linux 修复图形界面,图形界面操作的备份和恢复Linux发行版
- php super和parent,parent()、parents()的用法区别