sss

sss

北城余情 提交于 2019-11-27 18:10:08
sdfsdfsdf ### ACT Ⅰ ACT Ⅰ On a ferryboat in New York Harbor. We can see the Statue of Liberty. Richard Stewart, 30, is taking pictures. Richard : Excuse me. 1 My name is 2 Richard Stewart I'm a photographer 3 . May I 4 take a picture of you and your little boy? Mrs. Vann : What's it for? 5 Richard : It's for a book. Mrs. Vann : You're writing a book? Richard : It's a book of pictures 6 . I call it Family Album, U.S.A. Mrs. Vann : Oh, that's a nice idea Well, it's fine if you take our picture. I'm Martha vann. [She offers her hand.] 7 Richard : Thank you. I appreciate your help. 8 [to the

Z-Algorithm详解

混江龙づ霸主 提交于 2019-11-27 15:21:35
Z-Algorithm详解 0.前言 给你一个文本串 t t t 和一个模式串 p p p ,让你寻找 p p p 在 t t t 中出现的所以位置。 例如, t = " a b a c a b a b a c " t="abacababac" t = " a b a c a b a b a c " , p = " a b a " p="aba" p = " a b a " ,那么 p p p 在 t t t 中出现了 3 3 3 次,起始位置在 t t t 中的下标分别是 1 1 1 , 5 5 5 , 7 7 7 。 很显然可以想到 O ( ∣ t ∣ ∗ ∣ p ∣ ) O(|t|*|p|) O ( ∣ t ∣ ∗ ∣ p ∣ ) 的暴力算法,即以每一个位置为起始位置,暴力匹配每一个字符。但是如果 t t t 和 p p p 的长度都是 1 0 5 10^5 1 0 5 级别的就会超时,我们需要更高效的方法。在中国有一个 K M P KMP K M P 算法比较流行,但是我个人比较喜欢 Z − a l g o r i t h m Z-algorithm Z − a l g o r i t h m 。这里我给大家讲一下这个。 1.一些函数的定义 我们定义 z i ( s ) z_i(s) z i ​ ( s ) 为对于所有的 2 ≤ i ≤ ∣ s ∣ 2 \leq i

[Jzoj] 1236. 邦德I

妖精的绣舞 提交于 2019-11-26 20:45:18
题目描述 每个月,詹姆斯都会收到一些任务,根据他以前执行任务的经验,他计算出了每个吉米完成每个任务的成功率,要求每个任务必须分配给不同的人去完成,每个人只能完成一个任务。 请你编写程序找到一个分配方案使得所有任务都成功完成的概率。 题目解析 状压 D P DP D P 枚举状态 S S S ,状态 S S S 中 1 1 1 的个数就代表已经安排了 i i i 个人,然后枚举第 i i i 个人做在状态 S S S 中的哪个任务。 设 j j j 为安排第 i i i 个人所做的任务,且 S S S & 2 j 2^j 2 j − ^- − 1 = 1 ^1=1 1 = 1 。 则, f [ S ] = m a x ( f [ S ] , f [ f[S]=max(f[S],f[ f [ S ] = m a x ( f [ S ] , f [ S$& 2 j 2^j 2 j − ^- − 1 ^1 1 ] + a [ i ] [ j ] ) ]+a[i][j]) ] + a [ i ] [ j ] ) 代码 #include<bits/stdc++.h> using namespace std; int n; double f[1<<20],a[25][25]; int main() { cin>>n; for(int i=1;i<=n;i++) for(int j=1;j<=n