ABC339
题解不应该流露出太多感情,对吧。
建议评黄。
首先我们可以想到暴力 dp。
定义 \(dp_i\) 为以 \(a_i\) 为结尾满足题目意思的最长序列的长度。
很明显,时间复杂度为 \(O(n^2)\) 不可通过本题。
我们发现一个序列以 \(a_i\) 为结尾,那么上一位绝对是以 \(a_i-k\) 到 \(a_i+k\) 中的任意一个为结尾。所以 dp 转移可以变为以 \(a_i-k\) 到 \(a_i+k\) 中任意一个为结尾的序列长度的最大值。于是我们可以用线段树来维护。
所以这棵线段树只需要支持单点修,区间差 \(\max\) 即可。
很明显的 hash 题。
我写了双哈希。把 \(a_i\) 和 \(b_i\) 处理出来以后,我们直接用一个 map 来统计两个数相乘,然后计算答案即可。
随机推荐
- SELECT...FROM 表 a,( SELECT...FROM...WHERE...) tc...的一些注意以及多字段之间的模糊查询
将sql查询结果作为一个表来查询的时候的一些注意事项 因为工作,发现了这种sql的写法,但是有的时候感觉并不是自己想要的结果,自己试着玩了属于是 简单来说,这个查询并不是拼接结果的,而是将结果按照一个 ...
- 力扣27(java&python)-移除元素(简单)
题目: 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度. 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入 ...
- 力扣138(java)- 复制带随机指针的链表(中等)
题目: 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点. 构造这个链表的 深拷贝. 深拷贝应该正好由 n 个 全新 节点组成,其 ...
- anconda配置tensorflow环境
一.anconda的安装 1.进入Anaconda官网并按照电脑配置选择合适的安装包 Anaconda官网:https://www.anaconda.com/ 点击进入 不同的三个版本,分别是wind ...
- 关于CDN的原理、术语和应用场景那些事
关于CDN,想必你一定看过很多官方的解释.今天,CDN百科第七期,将用一篇3844字的文章,来带你了解CDN的诞生.术语.原理.特征以及应用场景,看完这篇文章,相信你将会对CDN这项互联网基础设施有更 ...
- Scheduled SQL: SLS 大规模日志上的全局分析与调度
简介: 本文总结了大规模日志全局分析的需求,讨论SLS上现有的典型分析方案,并延伸到 SLS 原生数据处理方案,介绍 Schedueld SQL 功能与最佳实践. 大规模日志全局分析的需求 数据大规模 ...
- Raft 共识算法3-日志复制
Raft 共识算法3-日志复制 Raft算法中译版地址:https://object.redisant.com/doc/raft中译版-2023年4月23日.pdf 英原论文地址:https://ra ...
- gitlab-ce-15.9.4安装
如果需要汉化版本,请根据汉化来选择版本 汉化包下载地址:https://gitlab.com/xhang/gitlab/ 1.依赖包安装 yum -y install policycoreutils- ...
- Jetpack Compose(6)——动画
目录 一.低级别动画 API 1.1 animate*AsState 1.2 Animatable 1.3 Transition 动画 1.3.1 updateTransition 1.3.2 cre ...
- VGA显示文字
VGA显示文字 VGA字符显示的原理 把要显示的字符转换成字符点阵,然后编码存储,着色的部分为1,其它为0.然后在VGA上输出显示. 字符点阵生成软件: https://www.zhetao.com/ ...