码迷,mamicode.com
首页 >  
搜索关键字:hamsters    ( 12个结果
AC自动机+矩阵加速--P3502 [POI2010]CHO-Hamsters
problem 给出 \(n\) 个互不包含的字符串,要求你求出一个最短的字符串 \(S\),使得这 \(n\) 个字符串在 \(S\) 中总共至少出现 \(m\) 次,问 \(S\) 最短是多少。 solution 我们首先转化题意: 有 \(n\) 个点,两个点 \(i,j\) 之间的权值为将第 ...
分类:其他好文   时间:2020-12-02 11:59:30    阅读次数:3
bzoj2085 [Poi2010]Hamsters 矩阵快速幂+字符串hash
bzoj2085 [Poi2010]Hamsters。 矩阵快速幂+字符串hash ...
分类:其他好文   时间:2019-09-29 09:36:48    阅读次数:81
【bzoj2085】[Poi2010]Hamsters Hash+倍增Floyd
题目描述 Tz养了一群仓鼠,他们都有英文小写的名字,现在Tz想用一个字母序列来表示他们的名字,只要他们的名字是字母序列中的一个子串就算,出现多次可以重复计算。现在Tz想好了要出现多少个名字,请你求出最短的字母序列的长度是多少。n个字符串保证不互相包含。 输入 输入:第一行n(1<=n<=200)和m ...
分类:其他好文   时间:2017-08-18 19:50:23    阅读次数:93
【BZOJ2085】[Poi2010]Hamsters hash+倍增floyd
【BZOJ2085】[Poi2010]Hamsters Description Tz养了一群仓鼠,他们都有英文小写的名字,现在Tz想用一个字母序列来表示他们的名字,只要他们的名字是字母序列中的一个子串就算,出现多次可以重复计算。现在Tz想好了要出现多少个名字,请你求出最短的字母序列的长度是多少。 T ...
分类:其他好文   时间:2017-08-15 19:58:24    阅读次数:139
Codeforces 424A ()
Squats Time Limit: 1000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64u Submit Status Description Pasha has many hamsters and he makes them wo ...
分类:其他好文   时间:2016-04-23 19:52:41    阅读次数:185
BZOJ 2085 [Poi2010]Hamsters Hash+倍增floyd
BZOJ 2085 [Poi2010]Hamsters Hash+倍增floyd...
分类:其他好文   时间:2015-08-31 21:46:22    阅读次数:221
bzoj-2085 Hamsters
题意: 给出n个长度不大于100000的字符串; 现在要找出一个字符串包括m个这些字符串; 求这个字符串的最小长度; 数据保证字符串不互相包含; n 题解: 数据保证了字符串没有包含的情况。。 那么为了节约考虑,还是要让字符串叠在一起比较合算; 设f[i][j]表示i后面加个j字符串要再加多少字符; 这个怎么求呢? Hash之后暴力; RKhash可以O(1)拿出前...
分类:其他好文   时间:2015-08-31 17:21:58    阅读次数:199
BZOJ2085 : [Poi2010]Hamsters
设g[i][j]为i串至少加上几个字符后才能包含j,可以通过Hash求出。然后就是求经过m-1条边的最短路,用倍增加速Floyed即可,时间复杂度$O(n^3\log m)$。#include#include#define rep(i,n) for(int i=0;ib)a=b;}struct ma...
分类:其他好文   时间:2015-08-19 19:27:48    阅读次数:168
【BZOJ2085】【Poi2010】Hamsters AC自动机bfs+倍增floyd
题解: 首先我们搞个 ACAC 自动机,然后每个串在 ACAC 自动机上 bfsbfs 求出 f(i,j)f(i,j) 表示串 ii 后面最少接 f(i,j)f(i,j) 个字母能搞出来串 jj 。 然后把每个串当成一个点,倍增 floydfloyd 求两点之间恰好走 mm 步的最短路。 代码: #include #include #include #include #includ...
分类:其他好文   时间:2015-05-15 20:03:13    阅读次数:232
BZOJ 2085 Poi2010 Hamsters Hash+倍增Floyd
题目大意:给定n个长度总和不超过10W的字符串,求一个最短的母串,使所有字符串的出现次数之和=m 这n个字符串保证不互相包含 TM能不能好好翻译了 令f[i][j]表示第i个字符串后面接上第j个字符串后会增加多少长度 由于j一定不是i的子串,因此这实际上就是在求i的最长的后缀,该后缀同时也是j的前缀 注意不能连出长度为0的边,因此当i=j时要保证这个长度 怎么求呢?其实Hash一下,枚举...
分类:其他好文   时间:2015-03-05 09:19:27    阅读次数:127
12条   1 2 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!