08 2016 档案

摘要:【题目大意】 有n头奶牛m种牧草,每种牧草有它的价格和鲜嫩度。每头奶牛要求它的牧草的鲜嫩度要不低于一个值,价格也不低于一个值。每种牧草只会被一头牛选择。问最少要多少钱? 【思路】 显然的贪心,把奶牛和牧草都按照鲜嫩度由大到小排序,对于每奶牛把鲜嫩度大于它的都扔进treap,然后找出后继。 不过注意后 阅读全文
posted @ 2016-08-31 22:56 iiyiyi 阅读(450) 评论(0) 推荐(0)
摘要:【题目大意】 给定n次操作(与,或,异或),在0~m中选择一个数,使这个数经过n次操作后得到的值最大。 【思路】 水题orz 枚举这个数每一位的取值是0还是1,然后根据它经过n次操作后的结果判断: (1)如果取0时,最后结果为1,那么必定取0。 (2)如果取1时,最后结果为1,且当前和小于等于m,那 阅读全文
posted @ 2016-08-31 17:21 iiyiyi 阅读(214) 评论(0) 推荐(0)
摘要:【题目大意】 Byteotian Bit Bank (BBB) 拥有一套先进的货币系统,这个系统一共有n种面值的硬币,面值分别为b1, b2,..., bn. 但是每种硬币有数量限制,现在我们想要凑出面值k求最少要用多少个硬币。 【思路】 裸的多重背包能过,不过好像有个神奇的优化? 把c[i]拆分成 阅读全文
posted @ 2016-08-31 09:46 iiyiyi 阅读(202) 评论(0) 推荐(0)
摘要:颓了十多天别问我再干嘛,在补学校作业 啊,开学了……我的夏天…… 【题目大意】 n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 0<n,m<=2*10^4 【思路】 数组是可以 阅读全文
posted @ 2016-08-31 09:22 iiyiyi 阅读(598) 评论(0) 推荐(0)
摘要:【题目大意】 在一个仅仅含有a,b的字符串里选取一个子序列,使得: 1.位置和字符都关于某条对称轴对称; 2.不能是连续的一段。 【思路】 不连续的回文串的个数=总的回文串个数-连续回文串的个数。 后者可以用manacher在O(n)时间里面求出。求的是个数不是最长串,和之前写的几道不怎么一样,注意 阅读全文
posted @ 2016-08-19 23:15 iiyiyi 阅读(834) 评论(0) 推荐(0)
摘要:【题目大意】 充电器由 n-1 条导线连通了 n 个充电元件。这n-1条导线均有一个通电概率p%,而每个充电元件本身有直接被充电的概率q[i]%。问期望有多少个充电元件处于充电状态? 【思路】 第一次做这种类型的题,还挺有意思的quq 显然这n个充电元件构成一棵树,考虑用树形DP。 我们用f1[i] 阅读全文
posted @ 2016-08-17 15:57 iiyiyi 阅读(1233) 评论(0) 推荐(1)
摘要:【题目大意】 Alice和Bob在玩一个游戏。有n个石子在这里,Alice和Bob轮流投掷硬币,如果正面朝上,则从n个石子中取出一个石子,否则不做任何事。取到最后一颗石子的人胜利。Alice在投掷硬币时有p的概率投掷出他想投的一面,同样,Bob有q的概率投掷出他相投的一面。 现在Alice先手投掷硬 阅读全文
posted @ 2016-08-17 13:48 iiyiyi 阅读(425) 评论(0) 推荐(0)
摘要:题目大意 有$n$张卡牌,$r$轮游戏。每张卡牌只能用至多一次,每张卡牌被用到的概率为$p_i$。现在从左往右轮,直到最右一张卡片或者某张卡片被用到。如果某张卡牌被用到,产生$d_i$的贡献,回合结束。求期望得分。 思路 神思路。我们用$f[i,j]$表示第i张牌得到j个机会的概率(包括被用过后跳掉 阅读全文
posted @ 2016-08-17 12:40 iiyiyi 阅读(165) 评论(0) 推荐(0)
摘要:【题目大意】 给定一个字符串S = {S1, S2, S3 … Sn}, 如果在串SS中, 子串T(|T| = n)为所有长度为n的SS的字串中最小的(字符串的比较), 则称T为”奇怪的字串”. 你的任务就是找出这个字符串。 【思路】 裸最小表示法。 注意要用unsigned char(!!)cha 阅读全文
posted @ 2016-08-17 11:00 iiyiyi 阅读(197) 评论(0) 推荐(0)
摘要:【题目大意】 给定n个人,每个人有一个佣金,i和j如果同时被雇佣会产生2*E(i,j)的效益,i和j如果一个被雇佣一个不被雇佣会产生E(i,j)的亏损,求最大收益。 【思路】 如果没有亏损,其实非常类似这道题:★ 注意在这类问题里的最小割指代的是损失最小化。对于这道题,我们把S看作雇佣,T看作不雇佣 阅读全文
posted @ 2016-08-15 17:48 iiyiyi 阅读(288) 评论(0) 推荐(0)
摘要:【题目大意】 给定一个m*n的矩阵,每个格子的人可以学文或者学理,学文和学理各有一个满意度,如果以某人为中心的十字内所有人都学文或者学理还会得到一个额外满意度,求最大满意度之和。 【思路】 发现这道题那么久(比划——)之前交过没A。强迫症先水过填个坑。懒得写题解了,都是套路。思路类似于以前的小M的农 阅读全文
posted @ 2016-08-15 15:23 iiyiyi 阅读(182) 评论(0) 推荐(0)
摘要:恢复内容开始 【题目大意】 有n次点击要做,成功了就是o,失败了就是x,分数是按comb计算的,连续a个comb就有a*a分,comb就是极大的连续o。求期望分数。 【思路】 比之前的OSU!简单好多的OSU。 设f[i]为期望分数,g[i]为期望末尾combo的长度。 ①s[i]='x',f[i] 阅读全文
posted @ 2016-08-15 14:48 iiyiyi 阅读(137) 评论(0) 推荐(0)
摘要:【题目大意】 n块巧克力,每次吃可以增加ai点快乐,每天早晨睡觉起来快乐值会减半,求如何使d天睡觉前的最小快乐值最大。 【思路】 二分每天的最小快乐值,只要没有达到快乐值就继续吃。 不知道为什么了WA了8发..8发??!!!!说好的水题呢??!!!而且我也不知道哪里错了反正突然AC了??!! 阅读全文
posted @ 2016-08-15 13:36 iiyiyi 阅读(335) 评论(0) 推荐(0)
摘要:【题目大意】 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权。其中lastans是上一个询问的答案,初始为0,即第一个询问的u是明文。 【思路】 这道题迷之好写,因为思路条理太清晰了! 我们每个点就是一棵线段树,维 阅读全文
posted @ 2016-08-15 12:10 iiyiyi 阅读(215) 评论(0) 推荐(0)
摘要:【题目大意】 判断两个字符串是否循环同构。 【思路】 我一开始的做法是直接同时在两个字符串上求最小表示法,只有部分测试点能过,理由未知,以后再来思考。 现在做法:分别求出两个字符串的最小表示法,再比较是否相等。 阅读全文
posted @ 2016-08-14 19:08 iiyiyi 阅读(292) 评论(0) 推荐(0)
摘要:【题目大意】 求一个循环数列的最小表示法。 【思路】 最小表示法模板题。之前用SAM做的,MLE了hhhhh戳☆ 阅读全文
posted @ 2016-08-14 18:17 iiyiyi 阅读(251) 评论(0) 推荐(0)
摘要:【题目大意】 有一个匹配串和多个模式串,现在不断删去匹配串中的模式串,求出最后匹配串剩下的部分。 【思路】 众所周知,KMP的题往往对应着一道AC自动机quq。本题同BZOJ3942(KMP),这里改成AC自动机即可。 我一开始写了原始的AC自动机,写挂了。后来思考了一下,应当用Trie图,机智地1 阅读全文
posted @ 2016-08-14 17:33 iiyiyi 阅读(211) 评论(0) 推荐(0)
摘要:【题目大意】 给出n个区间,问最多选取多少个区间使得它们互相不重叠。 【思路】 水题quq改善心情用。按照右端点大小排序,每次更新上一次的右端点,如果当前左端点大于上次右端点可取。 阅读全文
posted @ 2016-08-14 16:22 iiyiyi 阅读(154) 评论(0) 推荐(0)
摘要:【题目大意】 有一些点,它们之间存在一些有向边(由编号小的到编号大的),从一点到另一点消耗时间为边长。也可以消耗Ti时间直接抵达任意一个点。问所有点都走一遍最少需要多少时间? 【思路】 ①将每个点i拆为i和i’。 ②由S向i连(cap=1,cost=0)的边。由i'向T连(1,0)的边,表示抵达过该 阅读全文
posted @ 2016-08-14 15:56 iiyiyi 阅读(150) 评论(0) 推荐(0)
摘要:【题目大意】 已知一个treap上每个节点的键值、权值和访问频率。现在可以修改一些节点的权值(可以修改为实数),需要付出k(k为定制)的额外代价。一个treap的总代价=∑(每个节点的访问频率*深度)+额外代价。 *有趣的结论:键值、权值一旦确定,treap是唯一确定的。 【思路】 首先key值是不 阅读全文
posted @ 2016-08-14 11:37 iiyiyi 阅读(204) 评论(0) 推荐(0)
摘要:【题目大意】 超级计算机中的任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任务从第Si秒开始,在第Ei秒后结束(第Si秒和Ei秒任务也在运行),其优先级为Pi。询问,第Xi秒正在运行的任务中,优先级最小的Ki个任务(即将任务按照优先级从小到大排序后取前Ki个)的优先级之和是多少。特别 阅读全文
posted @ 2016-08-14 09:37 iiyiyi 阅读(713) 评论(0) 推荐(1)
摘要:【题目大意】 给一个长度为n的序列a。1≤a[i]≤n。 m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大于(r-l+1)/2。如果存在,输出这个数,否则输出0。 【思路】 只有query部分需要稍作修改。由于每个节点代表的是一个大小区间数的总数,所以只需判断左右子数的 阅读全文
posted @ 2016-08-13 12:21 iiyiyi 阅读(164) 评论(0) 推荐(0)
摘要:题意同BZOJ1901,多组数据,数据范围也不一样。重新写一遍复习一下。 阅读全文
posted @ 2016-08-13 10:35 iiyiyi 阅读(299) 评论(0) 推荐(0)
摘要:【题意】 给出一棵树和多组查询,求以每个节点为LCA的查询数有多少? 【错误点】 ①读入的时候,注意它的空格是随意的呀!一开始不知道怎么弄,后来看了DISCUSS区大神的话: 询问部分输入:scanf("%d",&m);for(int i=0;i<m;i++){scanf(" (%d %d)",&a 阅读全文
posted @ 2016-08-12 17:06 iiyiyi 阅读(158) 评论(0) 推荐(0)
摘要:稍后整理笔记。这题数据范围好像有点问题? 阅读全文
posted @ 2016-08-12 09:53 iiyiyi 阅读(207) 评论(0) 推荐(0)
摘要:求区间第k大。裸线段树。 莫队版本:☆ 阅读全文
posted @ 2016-08-11 21:08 iiyiyi 阅读(157) 评论(0) 推荐(0)
摘要:【题目大意】 一次舞会有n个男孩和n个女孩。每首曲子开始时,所有男孩和女孩恰好配成n对跳交谊舞。每个男孩都不会和同一个女孩跳两首(或更多)舞曲。有一些男孩女孩相互喜欢,而其他相互不喜欢(不会“单向喜欢”)。每个男孩最多只愿意和k个不喜欢的女孩跳舞,而每个女孩也最多只愿意和k个不喜欢的男孩跳舞。给出每 阅读全文
posted @ 2016-08-09 22:04 iiyiyi 阅读(596) 评论(0) 推荐(0)
摘要:【题目大意】 给定n个数和两个长度为n*5的序列,两个序列中的数均有1..n组成,且1..n中每个数恰好出现5次,求两个序列的LCS。 【思路】 预处理每个数字在a[i]中出现的五个位置。f[i]示以a[i]为末尾的最长公共子串(*这样就可以避免讨论交叉)。 依次处理b[i],对于每个b[i]找到a 阅读全文
posted @ 2016-08-09 11:48 iiyiyi 阅读(255) 评论(0) 推荐(0)
摘要:【题目大意】 输入长度为n的串S,求S的最长双回文子串T,即可将T分为两部分X,Y,(|X|,|Y|≥1)且X和Y都是回文串。 【思路】 首先普通地求manacher,然后求出以每个位置为左端点和右端点的最长回文串长度l[i]和r[i]。 l[i]=max{2*(j-i+1)-1}(j+p[j]-1 阅读全文
posted @ 2016-08-09 10:08 iiyiyi 阅读(187) 评论(0) 推荐(0)
摘要:【题目大意】 求最长回文队伍且队伍由中间向两边递减。 【思路】 和字符串一样的做法,在递推的时候增加判断条件:a[i-p[i]]<=a[i-p[i]+2]。 阅读全文
posted @ 2016-08-08 21:18 iiyiyi 阅读(275) 评论(0) 推荐(0)
摘要:【题目大意】 给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度。 【manacher知识点】 ①mx - i > P[j] 的时候,以S[j]为中心的回文子串包含在以S[id]为中心的回文子串中,由于 i 和 j 对称,以S[i]为中心的回文子串必然包含在以S[i 阅读全文
posted @ 2016-08-07 19:03 iiyiyi 阅读(200) 评论(0) 推荐(0)
摘要:【题目大意】 求两个字符串的最长公共子串。 【思路】 对第一个字符串建立后缀自动机,第二个字符串去匹配。cnt记录当前最长公共子串的长度,而ret记录答案。 p代表位置指针,初始在rt位置。 对于第二个字符串的某一位s[i],如果当前有s[i]孩子,则cnt+1,继续往后移动;否则沿着pre指针返回 阅读全文
posted @ 2016-08-06 11:52 iiyiyi 阅读(683) 评论(0) 推荐(0)
摘要:【题目大意】 求一个循环数列的最小表示法。 【思路】 最小表示法的正解:★ SAM乱搞,和前面的POJ那道一样。然而MLE了,当作学习一下map的用法^ ^ map的使用方法(来源:☆) 一、map的说明 1 头文件 #include <map> 2 定义 map<string, int> my_M 阅读全文
posted @ 2016-08-06 11:42 iiyiyi 阅读(242) 评论(0) 推荐(0)
摘要:【题目大意】 给出一个字符串,求第k大的子串。(输入1表示子串可重复,0表示不可重复) 【思路】 显然,k大子串是后缀自动机的经典题型,可以利用后缀自动机的性质来解决。对于字符串 [前铺1]"abcbc",我们可以画出它的后缀自动机,如下图: Pre树类似于AC自动机中的fail树,即将pre方向形 阅读全文
posted @ 2016-08-04 15:52 iiyiyi 阅读(767) 评论(1) 推荐(1)
摘要:好无聊,以前写过没什么好讲的,水过。戳 阅读全文
posted @ 2016-08-03 21:15 iiyiyi 阅读(277) 评论(0) 推荐(1)
摘要:【题目大意】 求一个循环数列的最小表示法。 【思路】 把原创复制一遍放在后面,建立SAM,从s按字典序开始跑长度L即可。 板子来源(作者见连接内):🌺 阅读全文
posted @ 2016-08-03 16:37 iiyiyi 阅读(193) 评论(0) 推荐(0)
摘要:【题目大意】 对于0,1,…,N-1的N个整数,给定一个距离序列D0,D1,…,DN-1,定义一个变换序列T0,T1,…,TN-1使得每个i,Ti的环上距离等于Di。一个合法的变换序列应是0,1,…,N-1的一个排列,任务是要求出字典序最小的那个变换序列。(概括by:BYVoid) 【思路】 我们意 阅读全文
posted @ 2016-08-03 10:24 iiyiyi 阅读(164) 评论(0) 推荐(0)
摘要:题目大意 将一个长度为N的非负整数序列分割成k+l个非空的子序列,每次选择一位置分割后,将会得到一定的分数,这个分数为两个新序列中元素和的乘积。求最大的分数。 [UOJ104]并输出任意一种方案 思路 显然,无论分割顺序如何,不会影响最后得到的结果。所以可以利用递推方程。$f[i][j]$表示取前$ 阅读全文
posted @ 2016-08-02 11:36 iiyiyi 阅读(178) 评论(0) 推荐(0)
摘要:已经八月份了药丸,开始肝作业并且准备高考啦!! 【题目大意】 《集合论与图论》这门课程有一道作业题,要求同学们求出{1, 2, 3, 4, 5}的所有满足以 下条件的子集:若 x 在该子集中,则 2x 和 3x 不能在该子集中。现在求以下问题:对于任意一个正整数 n≤100000,如何求出{1, 2 阅读全文
posted @ 2016-08-01 16:52 iiyiyi 阅读(163) 评论(0) 推荐(0)
摘要:【题目大意】 普通的Nim游戏为:两个人进行游戏,N堆石子,每回合可以取其中某一堆的任意多个,可以取完,但不可以不取。谁不能取谁输。这个游戏是有必胜策略的。现在对每一堆编号1,2,3,4,...n,在堆与堆间连边,没有自环与重边,从任意堆到任意堆都只有唯一一条路径可到达。然后他不停地进行如下操作:1 阅读全文
posted @ 2016-08-01 13:24 iiyiyi 阅读(302) 评论(0) 推荐(0)