
构造
FrostMonarch
这个作者很懒,什么都没留下…
展开
-
拼多多 2020校招 多多的排列函数(找规律 构造)
数列 {An}为N的一种排列。例如N=3,可能的排列共6种: 1 2 3 4 5 6 1, 2, 3 1, 3, 2 2, 1, 3 2, 3, 1 3, 1, 2 3, 2, 1 定义函数F:其中|X|表示X的绝对值。现在多多鸡想知道,在所有可能的数列 {An} 中,F(N)的最小值和最大值分别是多少。解题思路:我们发现,只要把连续的4个数倒着放...原创 2020-06-09 17:15:22 · 1508 阅读 · 8 评论 -
leetcode 287. 寻找重复数(构造,二分)
给定一个包含n + 1 个整数的数组nums,其数字都在 1 到 n之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3说明:不能更改原数组(假设数组是只读的)。只能使用额外的 O(1) 的空间。时间复杂度小于 O(n2) 。数组中只有一个重复的数字,但它可能不止重复出现一次。解题思路:我们建立一个数组cnt[i],表示数组中小...原创 2020-06-03 11:02:07 · 193 阅读 · 0 评论 -
5195. 最长快乐字符串 (贪心)
题目大意:现在我们有a个'a', b个'b' , c个'c'. 问我们怎么组合这些字符使得这个字符串尽可能长,而且不存在连续3个相同的字符。找出这个字符串。a,b,c<=100解题思路:因为a,b,c<= 100 其实是可以用dp来做的。不过需要用dp来打印路径。先讲一下dp怎么做吧。其实就是无脑5维dp即可。dp[a][b][c][d][e]. 表示 当前我们还有...原创 2020-04-05 14:57:44 · 307 阅读 · 0 评论 -
codeforces 1332D - Walk on Matrix(构造,位运算)
题目大意:有一个迷宫,小明从左上角可以走到右下角。每次小明走到一个格子,他都可以得到小明当前的分数 按位与 本个格子数字之后的分数。小明初始拿着的分数是:左上角的格子的数。现在有一位参赛者写了一个这样的dp:很快参赛者bob发现了他的dp是有问题的,现在让你构造一个迷宫,使得bob的dp的输出和最优输出相差k.k<=1e5. 注意,迷宫里的数字不能超过3e5.解题思路:...原创 2020-04-01 10:18:51 · 1104 阅读 · 0 评论 -
codeforces 615 div3 MEX maximzing (构造 hash)
题目大意:即a是一个空的数列。a总共插入q次,每一次加入新元素,假如对于每次得到的新序列,我们都可以对其中的任一个元素做 x的操作,即:vector<int> a;for(int i=0;i<q;i++){ a.push_back(yi); vector<int> tmp =a ; //ask sth about tmp ...原创 2020-01-23 15:51:18 · 184 阅读 · 0 评论 -
codeforces ECR 80 minimax problem (二分 构造)
题目大意:有n个数列,选出第i,j个,我们可以得到新数列如下:for k 1->m: a[z][k]=max(a[i][k],a[j][k])问我们得到的新数列z中,哪一个的min(a[z][k])最大 即:max(min (a[z][k]))) {k:1->m }解题思路:这种最小值最大 或者 最大值最小一般都是用二分来做。我们直接枚举答案mid,...原创 2020-01-17 13:15:53 · 216 阅读 · 0 评论