##题面 You are given a sequence of n integers a1 , a2 , ... , an in non-decreasing order. In addition to that, you are given several queries consisting ...
分类:
其他好文 时间:
2020-11-21 12:28:36
阅读次数:
7
题目链接 题意:给定一个字符串,求重复次数最多的连续重复子串 题目思路:先穷举长度L,然后求长度为L的子串最多能连续出现几次。首先连续出现1次是肯定可以的,所以这里只考虑至少2次的情况。假设在原字符串中连续出现2次,记这个子字符串为S,那么S肯定包括了字符r[0], r[L], r[L2],r[L3 ...
分类:
编程语言 时间:
2020-11-12 14:07:06
阅读次数:
10
#include<iostream> #include<memory.h> #include<cmath> #include<algorithm> using namespace std; typedef struct { int x, y; }node; node d[6000]; int r, ...
分类:
其他好文 时间:
2020-11-08 17:11:46
阅读次数:
15
区间符合条件的充要条件是$Max-Min+1=Cnt$其中$Max,Min,Cnt$分别为区间最大值,最小值,不同的数的个数。 变形后得$Max-Min-Cnt+1=0$ 考虑枚举右端点,在线段树上维护左端点$Max-Min-Cnt+1$的最小值。 $Min,Max$可以用单调栈维护,记$last_ ...
分类:
其他好文 时间:
2020-11-01 22:11:08
阅读次数:
14
题意:给你四组长度为$n$序列,从每个序列中选一个数出来,使得四个数字之和等于$0$,问由多少种组成情况(仅于元素的所在位置有关). 题解:$n$最大可以取4000,直接暴力肯定是不行的,我们可以先对后两个数组$c$和$d$,枚举他们每个元素的和,用一个新数组$CD$记录,然后再去枚举$a$和$b$ ...
分类:
其他好文 时间:
2020-10-31 01:32:05
阅读次数:
17
题目描述 后缀为 contest/140/problem/3 思路分析 考场上的确写了线段树,但是是针对中间那 $20$ 分打的…… 其实这道题的思想和线段树维护单调栈非常类似,(如果不明白建议去看一下这篇博客陶陶摘苹果)都是左右儿子之间互相和谐,只不过维护单调栈时左右儿子互相和谐的原因是因为要满足 ...
分类:
其他好文 时间:
2020-10-21 21:18:58
阅读次数:
24
前言 有些小伙伴可能会有疑惑,为什么面试总喜欢问算法与数据结构问题,这是有原因的 首先,算法能看出一个程序员的 基本功 ,数据结构与算法是计算机领域里面最最基础的学科,其他更高级的领域都或多或少都涉及到算法与数据结构,说算法与数据结构为其他计算机领域的地基也不过分。而且对于校招的小伙伴们来说,可能并 ...
分类:
编程语言 时间:
2020-10-19 23:04:59
阅读次数:
46
题目链接 题意 给出 n 个数字,求满足$a+b+c=d$的 d 的最大值,注意(a,b,c,d) 互不相等。 思路 折半枚举。 首先我们把任意两个数的和求出,排序。 然后从大到小枚举 d 的值,再枚举 c 的值,对于$d-c$,我们二分找到其在两个数的和中出现的次数。 接下来开始将重复的情况删去。 ...
分类:
其他好文 时间:
2020-10-06 21:16:10
阅读次数:
46
题意 问题转化成, 有 \(N\) 堆石子, 博弈双方每次可以选择不超过 \(M\) 堆, 每堆取不超过 \(X\) 个, 总的取石子数至少为一. 问胜利方. 题解 对于单堆来说是一个巴什博弈, \(SG\) 值为石子数模 \(X+1\). 我们回忆 \(M=1\) 时的 \(Nim\) 博弈, 它 ...
分类:
其他好文 时间:
2020-10-05 21:47:14
阅读次数:
26
题目链接:http://poj.org/problem?id=1050 和序列中无长度限制的最大子段和相同,如果当前的sum>0,那么它还有一定的价值,所以继续往上累加;如果当前sum<0,即sum不仅没有价值,反而会使后面的和更小,所以将sum重置为0为最优。 矩阵中维护每一列上的前缀和,枚举所选 ...
分类:
其他好文 时间:
2020-09-17 23:21:37
阅读次数:
35