上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 51 下一页
摘要: 题意 给定一个 nnn 个数的 排列 aaa,需要我们构造一张图,两点 i,j(i<j)i, j(i < j)i,j(i<j) 相连当且仅当 aia_iai​ 和 aja_jaj​ 为 ai,ai+1,⋯ ,ara_i, a_{i+1}, \cdots, a_rai​,ai+1​,⋯,ar​ 中的最 阅读全文
posted @ 2022-06-26 16:59 HappyBobb 阅读(22) 评论(0) 推荐(0)
摘要: 二分图染色好题。 一开始给定的是一个连通图。nnn 个点 n−1n - 1n−1 条边的连通图一定是一棵树,而一棵树不存在奇数环,显然是二分图。 既然是二分图,必然可以黑白染色。对于每一个白点,都可以和其他每一个黑点连边。全部连完之后总共有 c1×c2c1 \times c2c1×c2 条边,c1, 阅读全文
posted @ 2022-06-22 19:18 HappyBobb 阅读(12) 评论(0) 推荐(0)
摘要: 考虑优先队列广搜,第 kkk 次出队的即为答案。注意需要去重。复杂度 O(nklog⁡(nk))O(nk \log (nk))O(nklog(nk)),开 O2 可过,注意不要使用 long long,会 MLE。 #include <iostream> #include <queue> #incl 阅读全文
posted @ 2022-06-11 11:44 HappyBobb 阅读(18) 评论(0) 推荐(0)
摘要: 题意 动态维护一个序列,判断序列是否有两个以上不同的元素以及两个及以上相同的元素。 解法 这题 SPOJ 给出来源是 ACM ICPC 2009–2010, NEERC, Northern Subregional Contest,但是难度并不大,显然 STL 做这道题很容易,这里提供一个平衡树的做法 阅读全文
posted @ 2022-06-09 20:19 HappyBobb 阅读(17) 评论(0) 推荐(0)
摘要: 题意 动态维护一个序列,支持插入删除和查询中位数,多测。 解法 可以对顶堆,也可以平衡树。提供平衡树做法。 显然用平衡树的话这题非常容易,只需要插入删除和按排名查找值,比模板还容易。 特别注意的是,需要注意中位数的排名是什么。 我通常会在平衡树建立时插入极大值和极小值,所以排名有些改变。 设目前有 阅读全文
posted @ 2022-06-08 20:45 HappyBobb 阅读(19) 评论(0) 推荐(0)
摘要: 有一种暴力,枚举全排列,然后暴力 dfs,复杂度是 O(n!⋅2n)O(n! \cdot 2^n)O(n!⋅2n)。撇开 long long 能不能存得下,这种做法显然超时。 显然,对于任意一种顺序而言,显然应该先做加法再做乘法。所以可以优化,枚举全排列后每次枚举一个位置作为加法和乘法的中断点,复杂 阅读全文
posted @ 2022-05-28 16:54 HappyBobb 阅读(13) 评论(0) 推荐(0)
摘要: 题意 题面描述十分清晰。 思路 CF 上有一个 tag 是搜索,但是尝试了许久,bfs 一直 WA,于是考虑 DP。 注意到范围 n≤107n \leq 10^7n≤107,显然考虑 O(n)O(n)O(n) 的线性 DP。可以设 fif_ifi​ 表示生成长度为 iii 的最小代价,显然: fi= 阅读全文
posted @ 2022-05-15 19:32 HappyBobb 阅读(31) 评论(0) 推荐(0)
摘要: 题意 一个 nnn 个元素的序列和一个双端队列,按顺序每次在前或后面插入每个 aia_iai​,求出插入完成后最小逆序对数量。 解法 比较容易的贪心。 贪心,就是局部最优导致全局最优。显然,每次插入 aia_iai​,计算在前面和后面插入造成的逆序对数量,取较小的累加即可。 手玩一下样例,发现是对的 阅读全文
posted @ 2022-05-13 16:48 HappyBobb 阅读(51) 评论(0) 推荐(0)
摘要: 题意 题目描述非常清晰。 思路 先考虑一个 O(n2)O(n^2)O(n2) 级别的算法,就是暴力枚举每个 aia_iai​,并对其向两边扩展,最坏情况 O(n2)O(n^2)O(n2),但是在随机数据下跑得非常快。 想办法优化。 显然,我们发现枚举次数过多,所以考虑尽量少枚举一些。 对于每个 ai 阅读全文
posted @ 2022-05-12 17:29 HappyBobb 阅读(19) 评论(0) 推荐(0)
摘要: 题意 给定序列 aaa,以及两个数 c,tc,tc,t,求 ∑i=1n−c+1[(max⁡j=ii+c−1aj)≤t]\sum_{i=1}^{n-c+1} [(\max_{j=i}^{i+c-1} a_j) \leq t]∑i=1n−c+1​[(maxj=ii+c−1​aj​)≤t],即有多少个长度 阅读全文
posted @ 2022-05-08 10:54 HappyBobb 阅读(18) 评论(0) 推荐(0)
上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 51 下一页