NOIP 2015 D2 T2 子串 substring
来源:互联网 发布:dream it possible 编辑:程序博客网 时间:2024/05/16 00:46
#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>using namespace std;#define mod 1000000007llchar a[1000+5],b[200+5];int n,m,K;long long f[2][1001][201];long long tmp[2][1001][201];int main(){ cin>>n>>m>>K; scanf("%s%s",a+1,b+1); long long ans = 0; f[0][0][0]=tmp[0][0][0]=1; for(int i=0;i<=n;++i)tmp[0][i][0]=1; for(int k=1;k<=K;++k) { register int o= k&1,op = (k+1)&1; memset(f[o],0,sizeof f[o]); memset(tmp[o],0,sizeof tmp[o]); for(register int i=1;i<=n;++i) for(register int j=1;j<=m;++j) { if(a[i]==b[j]) { f[o][i][j]=tmp[op][i-1][j-1]; if(a[i-1]==b[j-1]) (f[o][i][j]+=f[o][i-1][j-1])%=mod; } (tmp[o][i][j] += f[o][i][j] + tmp[o][i-1][j])%=mod; } } for(int i=1;i<=n;++i) (ans += f[K&1][i][m])%=mod; cout<<ans<<endl;}
1 0
- NOIP 2015 D2 T2 子串 substring
- [NOIP 2012] 借教室 D2 T2
- Noip提高组2015 Day2 T2 子串 动态规划
- NOIP 2015 Day 2 substring 子串(字符串 dp)
- 3.4 T2(NOIP 2015)
- 暑假 D2 T2 热点
- NOIP 2015 [D2 T3]运输计划
- 【NOIP 2015】 D2 T1 跳石头
- NOIP 2015[D2 T1] 跳石头
- NOIP 2015 子串
- [NOIP2014]寻找道路 D2 T2
- <MZ&DC联考>D2 T2
- NOIP2012 借教室 D2 T2
- NOIP 2015 子串 DP
- NOIP 2015 D1 T2 信息传递
- 【NOIP 2015】 D1 T2 信息传递
- NOIP2015 D2 [stone][substring]
- NOIP2015 Day2 T2 子串
- bzoj1012(线段树或单调队列)
- 蒙特·卡罗方法-转
- JP1.1
- kei文件在用word打开时中文是乱码的解决办法
- ORA-08103 错误解决
- NOIP 2015 D2 T2 子串 substring
- hdu1024 Max Sum Plus Plus
- Longest Palindromic Substring_Leetcode_#5
- 电脑忘记密码的操作
- python基础语法
- Subsets
- loghtoj-1067
- 32位ubuntu安装mongodb数据库
- 带你剖析WebGis的世界奥秘----点和线的世界