树状数组
xxb3.1415
咸鱼
展开
-
Educational Codeforces Round 96 E. String Reversal 树状数组+序列自动机
地址题目大意每次交换相邻的字符,使字符串反转。求最少的交换次数思路题目意思等价于交换相邻的字符使得两个字符串相等,两个字符串为原串和逆序串。交换相邻的字符代表着要贪心,每次把最近相等的字符移动过去,代价就是之间有多少个字符。举个例子:注意:我们有一些约定。1.下面出现的最前面指的是第一个还会变的位置,看下面解释理解。2.当一个字符移动到最前面之后我们就把它删除。相当于每次找前面有多少个字符,要把已经用过的去掉。abacc 反转后是 ccaba先把最近的c移到最前面,交换了3次把当前最近原创 2020-10-11 19:58:02 · 205 阅读 · 0 评论 -
P3431 [POI2005]AUT-The Bus 树状数组+DP
题目链接题目大意:Byte City 的街道形成了一个标准的棋盘网络 – 他们要么是北南走向要么就是西东走向. 北南走向的路口从 1 到 n编号, 西东走向的路从1 到 m编号. 每个路口用两个数(i, j) 表示(1 <= i <= n, 1 <= j <= m). Byte City里有一条公交线, 在某一些路口设置了公交站点. 公交车从 (1, 1) 发车, 在(n, m)结束.公交车只能往北或往东走. 现在有一些乘客在某些站点等车. 公交车司机希望在路线中能接到尽量多的原创 2020-10-08 19:34:26 · 141 阅读 · 0 评论 -
树状数组与LIS(最长递增子序列)
求LIS的方法有很多,现在我知道的有三种,分别是dp, 贪心+二分,树状数组。这篇博客就重点写一点用树状数组解决LIS相关的题目。预备知识:树状数组,离散化。一个板子题:题目我就简单的说一下用树状数组的思路:首先数据很大,很自然的想到离散化。然后树状数组维护什么呢?[1-i](i为离散化后的相对大小)中以i结尾的LIS的长度,以为是1-i嘛,所以维护起来和普通的没什么两样。然后对于一个数a,...原创 2019-07-03 22:30:52 · 793 阅读 · 0 评论