12 2017 档案
摘要:又是被水题坑了。。。一直想不出来看题解说要什么主席树,于是开始打离线算法结果打到一半发现要强制在线。。No!!!发现直接AC自动机似乎可做?树剖之后在AC自动机上跑的时候判断一下不就好了吗!连线段树都不要让后快乐切掉,速度还可以(废话,人家N^2暴力都跑得飞快)#pr...
阅读全文
摘要:又是被水题坑了。。。一直想不出来看题解说要什么主席树,于是开始打离线算法结果打到一半发现要强制在线。。No!!!发现直接AC自动机似乎可做?树剖之后在AC自动机上跑的时候判断一下不就好了吗!连线段树都不要让后快乐切掉,速度还可以(废话,人家N^2暴力都跑得飞快)#pragma GCC opitmiz...
阅读全文
摘要:N 个结点、M 个含K 个结点的完全子图构成一个奇怪的图,问从结点1 走到结点N 最少需要经过多少个结点。非常经典的套路了,当时做2sat也讲过了建立中转站让后直接bfs,最后距离/2就好#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#inc...
阅读全文
摘要:N 个结点、M 个含K 个结点的完全子图构成一个奇怪的图,问从结点1 走到结点N 最少需要经过多少个结点。非常经典的套路了,当时做2sat也讲过了建立中转站让后直接bfs,最后距离/2就好#pragma GCC opitmize("O3")#pragma G++ op...
阅读全文
摘要:给你一个N 个数组成的序列V,要你删除其中K 个数,M 表示剩下的数字中任意两个数的差值的最大值,m 表示最小差值,要你计算删除K 个数后,M+m的最小值。一看便知道先排序,那么答案必然是一段连续的区间,直接上单调队列就好#pragma GCC opitmize("O3")#pragma G++ o...
阅读全文
摘要:给你一个N 个数组成的序列V,要你删除其中K 个数,M 表示剩下的数字中任意两个数的差值的最大值,m 表示最小差值,要你计算删除K 个数后,M+m的最小值。一看便知道先排序,那么答案必然是一段连续的区间,直接上单调队列就好#pragma GCC opitmize("O...
阅读全文
摘要:Jzoj contest2204~contest*1/2days
阅读全文
摘要:Jzoj contest2204~contest*1/2days
阅读全文
摘要:题目传送门突然听说要去THUAC让我很虚于是进入赛季恢复期发现自己已经不如退役选手了。。。。No!好的开始讲题第一问:显然线性可加乱搞啊,f[i]表示n=i时候的答案那么每加入2个节点在减掉原来那个就好了,f[i]=(f[i-1]*(i-1)+(f[i-1]+1)*2-f[i-1]考虑第二问,这一问...
阅读全文
摘要:题目传送门突然听说要去THUAC让我很虚于是进入赛季恢复期发现自己已经不如退役选手了。。。。No!好的开始讲题第一问:显然线性可加乱搞啊,f[i]表示n=i时候的答案那么每加入2个节点在减掉原来那个就好了,f[i]=(f[i-1]*(i-1)+(f[i-1]+1)*2...
阅读全文
摘要:WZK是个数学狂热爱好者。最近他又想出了一道题目来考大家。题目很简单,给定一个正整数n,对于所有不超过n的正整数,找到包含约数最多的一个数。如果有多个这样的数,那么回答最小的那个。直接dfs即可,注意两个地方要优化:1.按照素数表的顺序递增枚举 2.每个数的幂次递减,按照贪心原则就可以知道#incl...
阅读全文
摘要:WZK是个数学狂热爱好者。最近他又想出了一道题目来考大家。题目很简单,给定一个正整数n,对于所有不超过n的正整数,找到包含约数最多的一个数。如果有多个这样的数,那么回答最小的那个。直接dfs即可,注意两个地方要优化:1.按照素数表的顺序递增枚举 2.每个数的幂次递减,...
阅读全文
摘要:非常好的树剖模板题了,直接C颗线段树上去就好了,动态开点一次写对~#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#include#include#include#define N 100010#define mid (l+r>>1)using...
阅读全文
摘要:非常好的树剖模板题了,直接C颗线段树上去就好了,动态开点一次写对~#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#include#include#include#define N 100010#define m...
阅读全文
摘要:Jzoj1020:Dramatic是在太菜了。最近,他学习了有关逆序对的知识,并且掌握了计算一个序列逆序对个数的高效算法,因此,他兴冲冲的跑去向YY牛炫耀。YY牛对此不屑一顾,并打击Dramatic说:“这是在太小儿科了!”Dramatic很不甘心,于是在他的强烈要求下,YY牛给他出了一道跟逆序对...
阅读全文
摘要:Jzoj1020:Dramatic是在太菜了。最近,他学习了有关逆序对的知识,并且掌握了计算一个序列逆序对个数的高效算法,因此,他兴冲冲的跑去向YY牛炫耀。YY牛对此不屑一顾,并打击Dramatic说:“这是在太小儿科了!”Dramatic很不甘心,于是在他的强烈要...
阅读全文
摘要:你有一个字符串S,最开始为空,要求支持两种操作在S后面加入字符c删除S最后一个字符每次操作询问S有多少个两两不同子串应该本来应该用SAM+Trie离线做的,然而为了练一下后缀平衡树就写了其实也很好写,用哈希比较一下就好了,可以用set实现,开一个数组存每个后缀对应的节...
阅读全文
摘要:你有一个字符串S,最开始为空,要求支持两种操作在S后面加入字符c删除S最后一个字符每次操作询问S有多少个两两不同子串应该本来应该用SAM+Trie离线做的,然而为了练一下后缀平衡树就写了其实也很好写,用哈希比较一下就好了,可以用set实现,开一个数组存每个后缀对应的节点就好求height也可以用哈希...
阅读全文
摘要:艾利斯顿商学院篮球队要参加一年一度的市篮球比赛了。拉拉队是篮球比赛的一个看点,好的拉拉队往往能帮助球队增加士气,赢得最终的比赛。所以作为拉拉队队长的楚雨荨同学知道,帮助篮球队训练好拉拉队有多么的重要。 拉拉队的选拔工作已经结束,在雨荨和校长的挑选下,n位集优秀的身材...
阅读全文
摘要:艾利斯顿商学院篮球队要参加一年一度的市篮球比赛了。拉拉队是篮球比赛的一个看点,好的拉拉队往往能帮助球队增加士气,赢得最终的比赛。所以作为拉拉队队长的楚雨荨同学知道,帮助篮球队训练好拉拉队有多么的重要。 拉拉队的选拔工作已经结束,在雨荨和校长的挑选下,n位集优秀的身材、舞技于一体的美女从众多报名的女...
阅读全文
摘要:顺序和逆序读起来完全一样的串叫做回文串。比如acbca是回文串,而abc不是(abc的顺序为“abc”,逆序为“cba”,不相同)。 输入长度为n的串S,求S的最长双回文子串T,即可将T分为两部分X,Y,(|X|,|Y|≥1)且X和Y都是回文串。PAM模(m...
阅读全文
摘要:顺序和逆序读起来完全一样的串叫做回文串。比如acbca是回文串,而abc不是(abc的顺序为“abc”,逆序为“cba”,不相同)。 输入长度为n的串S,求S的最长双回文子串T,即可将T分为两部分X,Y,(|X|,|Y|≥1)且X和Y都是回文串。PAM模(mu)板题#include#inc...
阅读全文
摘要:当年还是too naive了啊,这么简单的题居然没做出来,太弱啦(讲真我那年还没上初中呢。。。)要是明年遇上这种题目就好了,嘻嘻嘻很显然的,最大的答案一定在两个串中出现过,那么我们来考虑如何找出这个串枚举一个x,我们用二分+hash求出a[x]和b[1]的lcp,设为...
阅读全文
摘要:当年还是too naive了啊,这么简单的题居然没做出来,太弱啦(讲真我那年还没上初中呢。。。)要是明年遇上这种题目就好了,嘻嘻嘻很显然的,最大的答案一定在两个串中出现过,那么我们来考虑如何找出这个串枚举一个x,我们用二分+hash求出a[x]和b[1]的lcp,设为len,让后再看a[1..x-1...
阅读全文
摘要:给一个树,每条边上面有一个字符串,每次询问两个节点路径上的字符串中有多少以给定的一个字符串为前缀显然是一个十分简单的题目,当时想多了打了树剖+Trie合并后来才意识到可以用差分+可持久化trie,过于愚蠢了。。。。。其实solution给了另一种解法,将所有字符串排序,哈希求lcp,让后存在一个数组...
阅读全文
摘要:给一个树,每条边上面有一个字符串,每次询问两个节点路径上的字符串中有多少以给定的一个字符串为前缀显然是一个十分简单的题目,当时想多了打了树剖+Trie合并后来才意识到可以用差分+可持久化trie,过于愚蠢了。。。。。其实solution给了另一种解法,将所有字符串排序...
阅读全文
摘要:下课前,园长提出了一个问题:“KMP 算法只能求出 next 数组。我现在希望求出一个更强大 num 数组——对于字符串 S 的前 i 个字符构成的子串,既是它的后缀同时又是它的前缀,并且该后缀与该前缀不重叠,将这种字符串的数量记作num[i]。例如 S 为 aaaaa,则 num[4] = 2。这...
阅读全文
摘要:下课前,园长提出了一个问题:“KMP 算法只能求出 next 数组。我现在希望求出一个更强大 num 数组——对于字符串 S 的前 i 个字符构成的子串,既是它的后缀同时又是它的前缀,并且该后缀与该前缀不重叠,将这种字符串的数量记作num[i]。例如 S 为 aaaa...
阅读全文
摘要:题目传送门呃这个不应该是一个简单的二分答案+贪心吗(似乎以前做过但是因为long long 卡了好久)我们考虑只洗衣服的情况,显然就是一个非常愚蠢的二分让后再来单独考虑烘干的情况,和上面一样也是一个二分最后考虑如何将两者的时间合并,显然,我们可以将所有衣服送出机器的时...
阅读全文
摘要:题目传送门呃这个不应该是一个简单的二分答案+贪心吗(似乎以前做过但是因为long long 卡了好久)我们考虑只洗衣服的情况,显然就是一个非常愚蠢的二分让后再来单独考虑烘干的情况,和上面一样也是一个二分最后考虑如何将两者的时间合并,显然,我们可以将所有衣服送出机器的时间存下来排序按照贪心原则,让最大...
阅读全文
摘要:人称不死将军的林登·万,与他的兄弟林登·图两人的足迹踏遍了地球的每一寸土地。他们曾将战火燃遍了世界。即使是lifei888这样的强悍人物也从来没有将他彻底击败。这一次,林登·万在N个城市做好了暴动的策划。然而,在起事的前一天,将军得知计划已经泄漏,决定更改计划,集中力量掌握一部分城市。具体来说,有M...
阅读全文
摘要:人称不死将军的林登·万,与他的兄弟林登·图两人的足迹踏遍了地球的每一寸土地。他们曾将战火燃遍了世界。即使是lifei888这样的强悍人物也从来没有将他彻底击败。这一次,林登·万在N个城市做好了暴动的策划。然而,在起事的前一天,将军得知计划已经泄漏,决定更改计划,集中力...
阅读全文
摘要:下面是一段实现冒泡排序算法的C++代码:for (int i=1;ia[j+1]) swap(a[j],a[j+1]);其中待排序的a数组是一个1~n的排列,swap函数将交换数组中对应位置的值。对于给定的数组a以及给定的非负整数k,使用这段代码执行了正好k次swap操作之后数组a中元素的值会是什么...
阅读全文
摘要:下面是一段实现冒泡排序算法的C++代码:for (int i=1;ia[j+1]) swap(a[j],a[j+1]);其中待排序的a数组是一个1~n的排列,swap函数将交换数组中对应位置的值。对于给定的数组a以及给定的非负整数k,使用这段代码执行了正好k次swap...
阅读全文
摘要:科学家在观测一棵大树,这棵树在不断地生长,科学家给这棵树的每个节点编了号。开始的时候,这棵树很小只有4个节点,一号点为根,其他三个节点挂在上面。在接下来的M次观察中,科学家每次都能看见这棵树从叶子处长出新的两个节点来。如果当前这棵树有N个节点,那么这棵树的新的两个节点的编号分别为N+1,N+2。科学...
阅读全文
摘要:科学家在观测一棵大树,这棵树在不断地生长,科学家给这棵树的每个节点编了号。开始的时候,这棵树很小只有4个节点,一号点为根,其他三个节点挂在上面。在接下来的M次观察中,科学家每次都能看见这棵树从叶子处长出新的两个节点来。如果当前这棵树有N个节点,那么这棵树的新的两个节点...
阅读全文
摘要:题目传送门四边形不等式第一题,口胡一下我们原来的方程式:f[i][j]=sum[i][j]+max(f[i][k]+f[k+1][j]){i#include#include#define N 2010using namespace std;int n,m,a[N],s...
阅读全文
摘要:题目传送门四边形不等式第一题,口胡一下我们原来的方程式:f[i][j]=sum[i][j]+max(f[i][k]+f[k+1][j]){i#include#include#define N 2010using namespace std;int n,m,a[N],s[N],f[N][N],g[N]...
阅读全文
摘要:物理题目传送门求第k大的子串?SAM模板题啊CLJ的论文都讲了怎么做啊,把自动机看成一个后缀Trie求出size让后像多叉平衡树那样乱搞就好了~比前两个哈希的题好多了~ (顺便,hdu高亮好好看啊)#pragma GCC opitmize("O3")#pragma G++ opitmize("O3"...
阅读全文
摘要:物理题目传送门求第k大的子串?SAM模板题啊CLJ的论文都讲了怎么做啊,把自动机看成一个后缀Trie求出size让后像多叉平衡树那样乱搞就好了~比前两个哈希的题好多了~ (顺便,hdu高亮好好看啊)#pragma GCC opitmize("O3")#pragma G...
阅读全文
摘要:题目传送门和上一篇题目几乎一样,不过还是这道题良心!bzoj好!poj慢到出*splay大法好! 两次AC不卡常!#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#include#include#include#...
阅读全文
摘要:题目传送门经典的数据结构维护字符串哈希这里用了很慢很慢的splay各种T(也可能是死循环)不过没办法因为会写splay的能力还是要有的#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#include#include#include#define...
阅读全文
摘要:题目传送门经典的数据结构维护字符串哈希这里用了很慢很慢的splay各种T(也可能是死循环)不过没办法因为会写splay的能力还是要有的#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#include#includ...
阅读全文