Loading [MathJax]/jax/input/TeX/jax.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >蓝湖的题,不错!

蓝湖的题,不错!

作者头像
ACM算法日常
发布于 2021-12-20 10:25:56
发布于 2021-12-20 10:25:56
79800
代码可运行
举报
文章被收录于专栏:ACM算法日常ACM算法日常
运行总次数:0
代码可运行

蓝湖联名力扣周赛出的题目还不错,前三题比较温暖,最后一题带一点套路,总的来说都不难

涉及知识点:模拟,字符串,动态规划,最长上升子序列,二分优化

5956. 找出数组中的第一个回文字符串

给定一个字典 w ,找到第一个回文字符串,如果没有输出空字符串

题解

模拟

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// cpp
class Solution {
public:
    bool check(const string& s) {
        int i = 0, j = s.length() - 1;
        while (i <= j) {
            if (s[i++] != s[j--]) return 0;
        }
        return 1;
    }
    string firstPalindrome(vector<string>& w) {
        for (auto& i: w) if (check(i)) return i;
        return "";
    }
};

5957. 向字符串添加空格

给定一个字符串 s 和一个正整数数组 a ,按照 a 中的值给 s 中的对应位置添加空格

题解

两个指针扫描

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// cpp
class Solution {
public:
    string addSpaces(string s, vector<int>& spaces) {
        int j = 0;
        string ans;
        for (int i = 0; i < s.length(); ++i) {
            if (j < spaces.size() && i == spaces[j]) ans += ' ', ++j;
            ans += s[i];
        }
        return ans;
    }
};

5958. 股票平滑下跌阶段的数目

给定一个正整数数组 a 表示每天的股价,如果有一段区间依次递减1 ,我们称之为平滑下跌,计算a 中平滑下跌的区间个数

题解

简单 dp,定义 dp[i] 表示以第i 天结尾,平滑下跌的天数,那么

  • a[i]+1=a[i1] ,则dp[i]=dp[i1]+1
  • 否则,dp[i]=1

根据状态转移方程计算,最后累加dp 数组即可

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// cpp
class Solution {
public:
    long long getDescentPeriods(vector<int>& p) {
        int n = p.size();
        typedef long long LL;
        vector<LL> dp(n);
        dp[0] = 1;
        for (int i = 1; i < n; ++i) {
            if (p[i - 1] - 1 == p[i]) dp[i] = dp[i - 1] + 1;
            else dp[i] = 1;
        }
        LL ans = 0;
        for (int i = 0; i < n; ++i) ans += dp[i];
        return ans;
    }
};

5959. 使数组 K 递增的最少操作次数

给定一个正整数数组 a 和一个正整数 k ,如果对于每一个位置 i 都有 a[ik]a[i] ,那么我们称之为 k 递增现在你可以花费一个操作数,将i 位置的元素 a]i] 变为任意正整数,请计算让 a 变得 k 递增的最小操作数数据规定,数组a 的长度 n 满足1n105

题解

一个简单的发现,变换后的数组满足a[i]a[i+k]a[i+2k]... 因此我们把原数组可以拆成k 个长为 nk 的子数组

考虑子问题,给定一个长度为 m 的正整数数组 b ,可以任意变换元素的值,最少花费多少操作数使得 b 单调不减?

只需要计算最长不降子序列的长度l ,那么答案即为ml ,具体可以参考 dilworth 定理我们对每个子数组都做这样的计算,最后求和即可,时间复杂度为O(nlognk)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// cpp
class Solution {
public:
    int kIncreasing(vector<int>& arr, int k) {
        int n = arr.size(), ans = 0;
        for (int i = 0; i < k; ++i) {
            vector<int> dp;
            int cnt = 0;
            for (int j = i; j < n; j += k) {
                auto it = upper_bound(dp.begin(), dp.end(), arr[j]);
                if (it == dp.end()) dp.push_back(arr[j]);
                else *it = arr[j];
                ++cnt;
            }
            ans += cnt - dp.size();
        }
        return ans;
    }
};
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ACM算法日常 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【赵渝强老师】达梦数据库的内存结构
数据库管理系统是一种对内存申请和释放操作频率很高的软件,如果每次对内存的使用都使用操作系统函数来申请和释放,效率会比较低,加入自己的内存管理是DBMS系统所必须的。通常内存管理系统会带来以下好处:
赵渝强老师
2025/03/25
960
【赵渝强老师】达梦数据库的内存结构
【赵渝强老师】达梦数据库的线程结构
达梦数据库服务器使用“对称服务器构架”的单进程、多线程结构。这种对称服务器构架在有效地利用了系统资源的同时又提供了较高的可伸缩性能,这里所指的线程即为操作系统的线程。服务器在运行时由各种内存数据结构和一系列的线程组成,线程分为多种类型,不同类型的线程完成不同的任务。线程通过一定的同步机制对数据结构进行并发访问和处理,以完成客户提交的各种任务。执行下面的语句将查看当前达梦数据库中的线程信息。
赵渝强老师
2025/03/25
970
【赵渝强老师】达梦数据库的线程结构
达梦数据库8安装
在/etc/sysctl.conf文件最后加上如下内容(数据仅供参考,解释内容来源于网络)
青丝束马尾
2024/11/02
1690
达梦数据库8安装
【赵渝强老师】达梦数据库的物理存储结构
达梦数据库由硬盘上的文件组成,而要读写数据需要通过达梦实例来完成。那么,达梦数据库是如何存储数据的呢?要搞清楚这个问题,就需要理解什么是达梦数据库的存储结构。达梦数据库的存储结构是由逻辑存储结构和物理存储结构组成。一般来说数据库无论是关系型数据库,还是NoSQL数据库在存储结构上,都是通过逻辑存储结构来管理物理存储结构。
赵渝强老师
2025/03/24
890
【赵渝强老师】达梦数据库的物理存储结构
达梦数据库性能优化
正文先获取硬件信息获取达梦基本信息vlicens 优先排查 MAX_CPU_NUM查看达梦内存分配状态dual 方式一vsysstat 方式二:正在执行的SQL统计不同账号连接的数量慢SQL排查查看缓冲池命中率内存分配查看死锁杀死 Session查询历史死锁查看当前活跃的会话消耗的内存统计信息(提升很有效)统计信息概述收集统计信息手动收集自动收集查看统计信息更新统计信息删除统计信息
收心
2025/04/08
1980
猿创征文|国产数据库---达梦应用技巧及使用案例
第一步:DM8数据库的.iso镜像文件上传到redhat 7操作系统的 /opt/dm8.iso目录下
芯动大师
2022/11/15
5890
达梦数据库主备部署
在 dm.ini 同级目录下新建文件 dmmonitor_manual.ini,该文件为非确认监视器的配置文件,主要用于平常运维中监控集群状态、手动切换主从节点等
陳斯托洛夫斯記
2024/08/07
2900
达梦数据库主备部署
【Docker】搭建达梦数据库(基于 X86 架构)
近期,团队研发同学向笔者提出搭建达梦数据库以进行适配的需求,笔者完成调研后着手搭建了一套测试环境,本文详细介绍达梦数据库的搭建步骤。
行者Sun
2024/09/02
4250
【Docker】搭建达梦数据库(基于 X86 架构)
达梦 DM8 数据库安装详细手册(Windows+Linux+Docker)
对于常年占据国产数据库排行榜前三的 达梦 数据库,早已 “垂涎a已久” (¯﹃¯)!
Lucifer三思而后行
2021/09/10
6.3K0
达梦 DM8 数据库安装详细手册(Windows+Linux+Docker)
达梦数据库的物理备份和还原简解
在bin下执行dmrman命令,进入dmrman交互界面,输入==backup database '$DM_HOME/data/实例名/dm.ini' (full);== 进行备份,默认就是全备份。
Echo_Wish
2023/11/30
4890
达梦数据库的物理备份和还原简解
达梦数据库阻塞死锁及解锁
达梦数据库管理系统是由达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM,其最新版本为8.0版本(DM8)。达梦数据库在性能方面表现极为出色,这主要体现在多个关键方面。
六月的雨在Tencent
2025/01/03
3940
达梦数据库V8 命令行静默安装
达梦数据库是一款完全自主研发的国产数据库,具有高安全性、高可靠性、高可用性等特点,可与国产操作系统 kylin 配合使用。
以谁为师
2023/12/21
5580
达梦数据库V8 命令行静默安装
达梦数据库启用日志方法,达梦数据库查看日志是否启用,达梦数据库日志文件位置查找
注: 日志启用时会非常占用硬盘的读写资源,使正常读写数据库的效率大大降低,因为日志文件很大,之前我们有个服务器一直起着日志,一个月就达到 500G 的大小了,平时的一个操作都几十兆的涨。 查看日志
小蓝枣
2020/09/24
5.4K0
达梦数据库启用日志方法,达梦数据库查看日志是否启用,达梦数据库日志文件位置查找
Linux部署达梦数据库
本文共 799 个字数,平均阅读时长 ≈ 2分钟 客户现场部署,所以没有来得及截图,后续有环境后再补充截图 一、创建安装目录 找一个风水宝地,dm用来安装数据库,dmdata用来挂载镜像 mkdir dm mkdir dmdata 然后将达梦ISO上传到dmdata 二、挂载ISO 进入dmdata文件夹下 mount dm8_20230104_HWarm_centos7_64.iso ../dmdata/ 三、安装 进入dmdata,可以看到挂载出来两个文件,执行安装 ./DMInstall.bi
小东东
2023/03/20
1.4K0
CentOS7 部署达梦 DM8
陳斯托洛夫斯記
2024/08/07
1610
国产数据库达梦Dm8部署
用户应根据 DM 及应用系统的需求来选择合适的硬件配置,如 CPU 的指标、内存及磁盘容量等。档次一般应尽可能高一些,尤其是作为数据库服务器的机器,基于 Java 的程序运行时最好有较大的内存。其它设备如 UPS 等在重要应用中也应考虑。下面给出安装 DM 所需的硬件基本配置:
俊才
2023/11/01
8050
国产数据库达梦Dm8部署
Oracle实例和Oracle数据库(Oracle体系结构)
--==========================================
Leshami
2018/08/07
2.8K0
YashanDB进程线程体系
YashanDB采用多线程架构,充分利用多核处理器的计算能力,提高系统的并发性和响应性。在多线程架构中,由一个主线程负责程序的初始化和协调工作,然后创建多个子线程来执行具体的任务。每个线程可以独立地执行特定的代码块,但它们共享进程的资源和内存空间。
用户11512874
2025/02/19
610
DM8数据守护集群安装部署_手动切换
数据守护集群安装部署前需要额外注意网络环境和磁盘 IO 配置情况,其他环境配置项建议请参考安装前准备工作。
用户10843414
2023/11/15
5340
DM8数据守护集群安装部署_手动切换
POSTGRESQL MYSQL MONGODB 配置文件总结(感谢我的三个DBA)
最近在整理POSTGRESQL MYSQL MONGODB REDIS 的标准化模板配置参数,当然这里面还包含 LINUX 的一些基本配置. 相关的整理的工作是我的三个 DBA 操作的, 针对目前的参数进行了相关的整理和重新设定. 昨天有人问我要,这边进贴出来,如果大家有什么问题 ,告诉我们, 大家一起进步.
AustinDatabases
2021/02/26
7910
推荐阅读
相关推荐
【赵渝强老师】达梦数据库的内存结构
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验