题目链接:https://codeforces.com/contest/1382/problem/D 题意 给出一个大小为 $2n$ 的排列,判断能否找到两个长为 $n$ 的子序列,使得二者归并排序后能够得到该排列。 题解 将原排列拆分为一个个连续子序列,每次从大于上一子序列首部的元素处分出下一连续 ...
分类:
其他好文 时间:
2020-07-22 15:28:16
阅读次数:
80
####题意 区间和的个数 给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数,包含 lower 和 upper。 区间和 S(i, j) 表示在 nums 中,位置从 i 到 j 的元素之和,包含 i 和 j (i ≤ j)。 说明: 最直观的算法复杂度是 O(n2 ...
分类:
其他好文 时间:
2020-07-22 13:50:12
阅读次数:
66
题目链接:Unmerge 题意:定义两个数组的合并merge(a,b),每次将数组a第一个元素和数组b第一个元素中最小的那个放到数组c中,同时删除那个最小的元素,现在给你一个长度为2*n的排列,问是否能由两个长度为n的数组合并而成 思路:对于长度为2*n的排列,显然是通过一段一段合并得到的,例如(3 ...
分类:
其他好文 时间:
2020-07-22 11:37:14
阅读次数:
72
B. Sequential Nim 题意 nim博弈的简化版,要求只能从第一堆开始取。最后取得胜利 思路 从后往前推,第n堆是必胜态,第n-1堆以及以前,如果只有1个石子,状态转换,如果多于一个石子,必胜(因为可以留一个也可以一个不留)。 代码 int a[100005]; main(void) { ...
分类:
其他好文 时间:
2020-07-22 11:20:09
阅读次数:
91
做完前四题还有一个半小时... 比赛链接:https://codeforces.com/contest/1382 A. Common Subsequence 题意 给出两个数组,找出二者最短的公共子序列。 题解 最短即长为一。 代码 #include <bits/stdc++.h> using na ...
分类:
其他好文 时间:
2020-07-22 11:10:39
阅读次数:
89
题意: ? 给定三个数字 \(n,c,k\) ,求以下式子 ? \(\sum_{i=0}^nF(ic)^k\%(10^9+9)\) ? 其中$F(x)$为斐波那契数列第$x$项。 ? $1\leq n,c\leq10^{18},1\leq k \leq10^5$ 分析: ? 在比赛的时候我搜索了一波 ...
分类:
其他好文 时间:
2020-07-22 01:44:09
阅读次数:
110
题意: 每次翻转一段区间,询问翻转区间后整个序列的逆序对数量。 题解: 每次翻转区间,那么翻转区间的答案就是整个序列的原始答案减去这个区间里逆序对的数量加上顺序对的数量。 统计逆序对和顺序对用树状数组做。 #include<bits/stdc++.h> using namespace std; co ...
分类:
编程语言 时间:
2020-07-21 23:21:03
阅读次数:
88
第一类 · 树形动态规划 问题一:求树上最大权独立集 题意描述 有一棵大小为 $n$ 的树,其中有 $n-1$ 组点有连边,请找到大小最大的一个集合,使得树中以编号为集合内元素的节点两两无直接连边。 $n \le 5000$。 (简单讲,就是从一棵树内找到尽可能多的点,并且这些点两两没有连边) 算法 ...
分类:
其他好文 时间:
2020-07-21 23:20:52
阅读次数:
86
题意很简单,就是让你求这个东西,这个时候你发现,原题???? https://blog.csdn.net/acdreamers/article/details/23039571 哦,只是原来写过的哪一题的C是1,这个是1e18. 想都不用想,直接二项式展开,求等比数列的前n项和。 你会得到第i项(一 ...
分类:
其他好文 时间:
2020-07-21 23:08:28
阅读次数:
137
题意:让我们根据提供的序列,找出另外一个序列 使当前序列满足非负整数中,前k个数中的未出现过的最小整数等于提供的序列中第K个数 思路:我们采用从后面遍历到前面的做法 首先可以确定的是,假如前后两个数字不相同,如 5 6 ,则在6的位置(也就是第二个位置)我们可以填上5,这是确定的 然后再用一个vis ...
分类:
其他好文 时间:
2020-07-21 22:18:57
阅读次数:
68