随笔分类 -  2019ACM暑期集训

1 2 3 4 5 ··· 7 下一页
摘要:题意: 多个输入样例,以字符串END结束。对于每个串输出其最长回文子串 思路: 对于回文串来说,我们可能一开始会想到 $O(n^2)$的 循环中心位置然后往左右两端匹配。 Manacher算法则可以将其直接降到 $O(n)$ ,运用的则是回文串本身对称性的原理。 由于任意一个字符串长度有奇偶,对于奇 阅读全文
posted @ 2019-08-28 17:57 Tianwell 阅读(221) 评论(0) 推荐(0)
摘要:" 原题链接 " 题意: 给你一个长为 N 的数字序列,其中序列中的值范围在$(1~100)$。你需要每次在序列中抽取一个数字(不能抽取两端),每次抽取一个数字的花费为:抽取的数字与其左右数字的乘积。 当你把牌抽到只剩下左右两端时,求出能得到的最小花费。 思路: 区间dp的思路即是:为了解在一个区间 阅读全文
posted @ 2019-08-28 16:00 Tianwell 阅读(122) 评论(0) 推荐(0)
摘要:题意: 求所给出长度为 N 的最长上升子序列长度 ""思路: (1) $O(n^2)$的 动态转移: 设$dp[i]$表示以$i$结尾的最长单调子序列,那么当$arr[i] arr[j]时$ $dp[i]=max(dp[j]+1,dp[i]) (j\in[1,i))$ (2) $O(n^2)$ $d 阅读全文
posted @ 2019-08-27 00:33 Tianwell 阅读(122) 评论(0) 推荐(0)
摘要:题意: 给出两个字符串,求出最长的公共子序列大小。 思路: 算是最经典的LCS问题吧。 设 $X=(x_1,x_2,.....x_n) 和 Y=(y_1,y_2,.....y_m)$ 是两个序列,将 X 和 Y 的最长公共子序列记为$lcs(X,Y)$ ,找出$lcs(X,Y)$就是一个最优问题 然 阅读全文
posted @ 2019-08-26 20:02 Tianwell 阅读(171) 评论(0) 推荐(0)
摘要:题意: 题意相当于:给你六种物品,每种物品对应有 $num[i] (i为物品编号)$个,同时第 $ith$ 物品价值为&i&,现在问你能否将这些物品分成两堆,使得每堆的价值相同 思路: 我们可以用dfs去暴力搜索,当然这里使用多重背包的想法。即有 N 个物品 对应每个物品都有对应的 体积,能否找到任 阅读全文
posted @ 2019-08-26 19:23 Tianwell 阅读(135) 评论(0) 推荐(0)
摘要:"原题链接" 题意: 给你两个数 $N,M$ 你要求出 符合条件 $GCD(X,N) =M,\space (1 include include include include include define IOS ios::sync_with_stdio(0); cin.tie(0); define 阅读全文
posted @ 2019-08-26 16:00 Tianwell 阅读(142) 评论(0) 推荐(0)
摘要:题意: 给你一个范围 $(1 define IOS ios::sync_with_stdio(0); cin.tie(0); define accept 0 define mp make_pair using namespace std; typedef long long ll; typedef 阅读全文
posted @ 2019-08-26 15:23 Tianwell 阅读(173) 评论(0) 推荐(0)
摘要:题意: 给出一个范围 $(l,r)$ , 要求计算该范围中 满足 其中连续两位不为62, 并且不包含4 的符合条件个数。 思路: 在用数位dp写之前发现自己以前用暴力的方法过去了....(就直接枚举然后除余 4 和 64)所以明明做过一道数位dp的题,却对数位dp毫无印象.. 关于数位dp:在数位上 阅读全文
posted @ 2019-08-26 11:14 Tianwell 阅读(112) 评论(0) 推荐(0)
摘要:题意: 即是给你一个容量M的包,有N件物品,每件物品有分别对应的 价值value 以及 重量weight .然后在不超过该背包容量的情况下能得到的最大价值为多少? 思路: 由于这是最基础的问题,所以就记录当对 01背包状态转移方程式的 理解。 对于动态规划来说,首先要知道我们要确定哪些状态量。然后再 阅读全文
posted @ 2019-08-25 16:44 Tianwell 阅读(111) 评论(0) 推荐(0)
摘要:原题链接: 题意: 给你一个长为 $N$的序列。你要将其分为 $M$ 段不重叠的连续区间 , 使得这些区间的总和最大。 思路: 我们先从状态来看。一般关于序列问题我们很容易想到 以第 $j$ 个数结尾的状态。然后再结合这道题的 $M$ 个不同区间,我们可以再设一个 区间个数为 $i$ 的状态。即最后 阅读全文
posted @ 2019-08-25 15:01 Tianwell 阅读(148) 评论(0) 推荐(0)
摘要:题意: 给你N个结点的树,每条边的权值,以及一个起点位置S。 你有两个robot ,可以同时在树上跑。每跑过一条边就要花费一条边权值的油费(要重复i计算)。现在你要把整棵树跑完,问至少要花费多少。 思路: 做这道题的时候想到了之前做过19牛客暑期训练赛的一道题,第四场A-meeting(签到题),两 阅读全文
posted @ 2019-08-24 15:57 Tianwell 阅读(199) 评论(0) 推荐(0)
摘要:题意: 给你 N 个点以及 N-1 条边将所有点两两连接(树),每个点都有对应编号。现在给你k个点,你要求出这个树上的某个点使得 所给两个点到该点的时间(经过的边数)其中最大的那个为 所能得到的所有答案的最小值。 思路: 如果仅仅是两个点,那么我们用dijkstra跑一下就可以得到。但是这是k点,切 阅读全文
posted @ 2019-08-24 12:19 Tianwell 阅读(181) 评论(0) 推荐(0)
摘要:原题连接 : 题意 :给一个 $N \times M$ 棋盘 对于任何一个棋盘中的由任意四点构成的矩形,如果 其中三角存在棋子 则第四个角会自动生成一个棋子 求铺满整个棋盘 我们至少要向棋盘里加多少枚棋子 思路 :说实话一开始很不容易去想如何去解决。存在两点,即到底所给出的棋子能最多推出哪些新的棋子 阅读全文
posted @ 2019-08-24 10:51 Tianwell 阅读(132) 评论(0) 推荐(0)
摘要:题意 :给你N个模式串( 只含 'A' , 'T' , 'G' , 'C' )以及一个文本串长度m,每个串的长度不会超过10,求出有多少个串满足不包含所有的模式串,并且长度为m. 结果 mod 100000 思路 :我们要使组成的串不包含模式串,如果从AC自动机的角度来想就是每一次都不能走到某个模式 阅读全文
posted @ 2019-08-22 18:56 Tianwell 阅读(144) 评论(0) 推荐(0)
摘要:原题链接:Jzzhu and Sequences 题意: 给你一个线性递推式 $f_i = f_{i 1}+f_{i+1} \Rightarrow f_{i+1} = f_i f_{i 1} \Rightarrow f_{i} = f_{i 1} f_{i 2}$ , $f_1= x\space , 阅读全文
posted @ 2019-08-20 19:22 Tianwell 阅读(148) 评论(0) 推荐(0)
摘要:原题链接:CodeForces - 580D 题意:给你n种菜,吃每种菜都会得到对应的满足值。给出k种buff,如果先吃a再吃b 满足感就会提升c。最后你要吃共m种菜,能获得的最大满足值为多少。 思路:一开始会想到最短路之类的,相当于有向图。但是这是多源出发的最长路径(不会....),在看看题目范围 阅读全文
posted @ 2019-08-20 11:15 Tianwell 阅读(200) 评论(0) 推荐(0)
摘要:原题链接:HDU - 6386 题意: 给你n个站点,m条边连接。每一条边都有一个编号,顺着编号相同的一直走整条路上只花费为1。如果在中途换到不同编号的边,则花费会增加。 思路: 或许一开始会想到最短路,我们先建个图然后用dijkstra跑一下。建图的话我们可能想到dfs或者bfs去搜索,相同编号则 阅读全文
posted @ 2019-08-19 16:38 Tianwell 阅读(249) 评论(0) 推荐(0)
摘要:原题地址:HDU - 3065 题意:给出N个模式串(在ascii范围内(128)),再给你一个文本串 (2 e6 以内),输出存在的模式串以及出现次数 (计数可以重叠) 思路:AC自动机啦,我们要会用last优化后ac-atomaton 阅读全文
posted @ 2019-08-19 14:58 Tianwell 阅读(134) 评论(0) 推荐(0)
摘要:题目链接:HDU - 2896 题意:给你n个模式串,对应每个模式串由编号,给出m个文本串,然后你要输出对应所匹配出模式串序号,以及有多少个文本串中有模式串 思路:比起比较基本统计个数,这里我们可以用set或者map来统计模式串序号 这里总结一下新学习的last优化。 参考博客:(1) last相当 阅读全文
posted @ 2019-08-19 11:50 Tianwell 阅读(251) 评论(0) 推荐(0)
摘要:链接:HDU-2222 很久之前就准备学AC自动机了,今天就把最基础的搞定一下。 由于是最基础的AC自动机所以我先总结一下基础内容 ( qvq 最基础的AC自动机解决的是:多字符串匹配问题,我们知道kmp是优化 一对一的匹配。那么 N对一的匹配难道要用kmp跑 N次?答案是no. AC自动机全称:A 阅读全文
posted @ 2019-08-18 19:18 Tianwell 阅读(159) 评论(0) 推荐(0)

1 2 3 4 5 ··· 7 下一页