上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 32 下一页
摘要: "题目链接" 题目大意:给你一串数让你求他们冒泡排序的总交换次数。 假设我们要让一串数从小到大排序,那么对于其中的一个数$ai$,它前面有多少个大于它的数,那么它需要交换的次数就是多少,换句话说,就是求逆序数。归并排序求逆序数就是在归并排序的基础上加入一行代码来统计排序过程中一个数从原来的位置到现在 阅读全文
posted @ 2020-03-24 21:25 shuitiangong 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 题目链接 没什么好说的,就照着题意做就行了,不过要最后输出的编号是电影在c或者d数组里的下标而不是值。之前用unordered_map跑了1500ms,这个跑了350ms,常数真是个可怕的东西 const int maxn = 2e5+10; int a[maxn], b[maxn], c[maxn 阅读全文
posted @ 2020-03-24 17:23 shuitiangong 阅读(198) 评论(0) 推荐(1) 编辑
摘要: "题目链接" 题目大意:给你一棵树让你给每个结点编一个号,使得每一条从一个结点到另一个结点的路径中没有出现过的最小的数字最小。 1.如果一棵树是一条链的话,那么无论怎么编号,结果都是一样的。 2.如果一棵树不是一条链,那么必定存在一个结点的度数大于$3$,那么通过这个结点的路径只能走所有与他相连的若 阅读全文
posted @ 2020-03-24 13:37 shuitiangong 阅读(100) 评论(0) 推荐(0) 编辑
摘要: "题目链接" "官方题解" 这次只是对官方题解做一下简化... 我们首先先看一下dalao画的图: 其实如果能画出来这张图那么思路已经很清晰了... 1.因为每一个'('都要有一个')'来匹配,所以说无论是对于一个正确的区间,还是对于一个错误的、但是可以重新排序的区间,它的左右端点都应该是0,如果不 阅读全文
posted @ 2020-03-23 11:48 shuitiangong 阅读(209) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 题目要求我们求出满足条件的最大值,因为$f$的长度不是固定的,所以如果直接求解的话,非常麻烦。但是,如果我们用二分判定答案的话,问题就变得简单了。但是二分必须要区间具有单调性,我们怎么让区间具有单调性呢?对于一个平均值,如果它偏大的话,那么这个区间里面任意长度的序列的平均值都取不到这个 阅读全文
posted @ 2020-03-23 10:42 shuitiangong 阅读(235) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 既然当且仅当两头牛中间的牛身高都比它们矮时,两头牛方可看到对方。那么我们可以假设这两头可以互相看到的牛身高相等,而他们中间的牛最少要比他们两个的身高少$1$,所以我们每次让他们之间的所有数减1就行了,但是如果是直接修改的话,显然复杂度会到$n^2$级别,但是因为询问只有一次,所以说不需 阅读全文
posted @ 2020-03-22 11:44 shuitiangong 阅读(160) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 首先我们要知道差分数组的第一个元素等于原数组的第一个数,而其他的数等于他和他前一个数的差,那么如果一个数列中的所有数都相等,那么他的差分数列除了第一个数外,别的数肯定都是0。那么我们现在有一个差分数组$B$,我们要让区间$[l, r]$中所有数加$1$或者减$1$可能有一下情况: 1. 阅读全文
posted @ 2020-03-22 11:36 shuitiangong 阅读(263) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 二维前缀和模板题,首先我们得先了解一下二维前缀和怎么求。 1.首先我们先对第一行与第一列做一下处理,显然,对于第一行$g[0][i] = g[0][i] + g[0][i 1]$,对于第一列$g[i][0] = g[i][0] + g[i 1][0]$。 2.然后我们考虑位于其他位置的 阅读全文
posted @ 2020-03-21 21:33 shuitiangong 阅读(157) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 分析 首先,由唯一分解定理的推论可以得到下面的式子: $F(A) = (q_1^0+q_1^1+...+q_1^{k_1})\times (q_2^0+q_2^1+...+q_2^{k_2})...\times (q_n^0 + q_n^1 + ... + q_n^{k_n})$ 然后 阅读全文
posted @ 2020-03-21 12:11 shuitiangong 阅读(164) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 大致看了一下,网上的题解大多数是用的逆元做的,今天受lyd蓝书的启发,发现用分治也可以做这个。 首先,我们设$F(n) = 3^0 + 3^1 + 3^2 + ... + 3^n$。 1.如果n为奇数: $F(n) = (3^0 + 3^1 + 3^2 ... + 3^{\frac{n 阅读全文
posted @ 2020-03-20 23:19 shuitiangong 阅读(175) 评论(0) 推荐(0) 编辑
上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 32 下一页