poj1080 dp
//Accepted 200 KB 0 ms
//dp
//dp[i][j]表示s1用前i个,s2用前j个字符能得到的最大分数
//dp[i][j]=max(dp[i-1][j]+score[s1[i-1]]['-'],
// dp[i][j-1]+score[['-'][s2[j-1]],
// dp[i-1][j-1]+score[s1[i-1]][s2[j-1]])
//注意初始化
//dp[0][0]=0;
//dp[0][i]=dp[0][i-1]+score['-'][s2[i-1]]
//dp[i][0]=dp[i-1][0]+score[s1[i-1]]['-']
//还要初始化dp[i][j]=-inf;
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
;
;
int dp[imax_n][imax_n];
int n1,n2;
char s1[imax_n];
char s2[imax_n];
int getScore(char ch1,char ch2)
{
;
;
;
;
;
if (ch1=='C')
{
;
;
;
;
}
if (ch1=='G')
{
;
;
;
;
}
if (ch1=='T')
{
;
;
;
;
}
if (ch1=='-')
{
;
;
;
;
}
}
void Dp()
{
//memset(dp,0,sizeof(dp));
dp[][]=;
;i<=n1;i++)
dp[i][]=dp[i-][]+getScore(s1[i-],'-');
;i<=n2;i++)
dp[][i]=dp[][i-]+getScore(]);
;i<=n1;i++)
{
;j<=n2;j++)
{
dp[i][j]=inf;
]+getScore(])>dp[i][j])
dp[i][j]=dp[i][j-]+getScore(]);
][j]+getScore(s1[i-],'-'))
dp[i][j]=dp[i-][j]+getScore(s1[i-],'-');
][j-]+getScore(s1[i-],s2[j-]))
dp[i][j]=dp[i-][j-]+getScore(s1[i-],s2[j-]);
}
}
printf("%d\n",dp[n1][n2]);
}
int main()
{
int T;
scanf("%d",&T);
while (T--)
{
scanf("%d",&n1);
scanf("%s",s1);
scanf("%d",&n2);
scanf("%s",s2);
Dp();
}
;
}
poj1080 dp的更多相关文章
- poj3356 dp
//Accepted 4100 KB 0 ms //类似poj1080 //dp[i][j]表示s1用前i个,s2用前j个的最少匹配步数 //dp[i][j]=min(dp[i][j-1]+1,dp[ ...
- poj1080 - Human Gene Functions (dp)
题面 It is well known that a human gene can be considered as a sequence, consisting of four nucleotide ...
- DP总结 ——QPH
常见优化 单调队列 形式 dp[i]=min{f(k)} dp[i]=max{f(k)} 要求 f(k)是关于k的函数 k的范围和i有关 转移方法 维护一个单调递增(减)的队列,可以在两头弹出元素,一 ...
- LCS poj1080
题目链接:https://vjudge.net/problem/POJ-1080 参考博客:https://yq.aliyun.com/ziliao/372259 题意:给两个字符串,只含有'A',' ...
- POJ-1080 Human Gene Functions---类似LCS
题目链接: https://cn.vjudge.net/problem/POJ-1080 题目大意: 给定两组序列,要你求出它们的最大相似度,每个字母与其他字母或自身和空格对应都有一个打分,求在这两个 ...
- BZOJ 1911: [Apio2010]特别行动队 [斜率优化DP]
1911: [Apio2010]特别行动队 Time Limit: 4 Sec Memory Limit: 64 MBSubmit: 4142 Solved: 1964[Submit][Statu ...
- 2013 Asia Changsha Regional Contest---Josephina and RPG(DP)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=4800 Problem Description A role-playing game (RPG and ...
- AEAI DP V3.7.0 发布,开源综合应用开发平台
1 升级说明 AEAI DP 3.7版本是AEAI DP一个里程碑版本,基于JDK1.7开发,在本版本中新增支持Rest服务开发机制(默认支持WebService服务开发机制),且支持WS服务.RS ...
- AEAI DP V3.6.0 升级说明,开源综合应用开发平台
AEAI DP综合应用开发平台是一款扩展开发工具,专门用于开发MIS类的Java Web应用,本次发版的AEAI DP_v3.6.0版本为AEAI DP _v3.5.0版本的升级版本,该产品现已开源并 ...
随机推荐
- <转> jsp页面向action传值的方法(最后一种简单)
多的不说,直接上代码; struts.xml代码: <?xml version="1.0" encoding="UTF-8"?> <!DOCT ...
- 如何精确地测量java对象的大小-底层instrument API
转载: 如何精确地测量java对象的大小-底层instrument API 关于java对象的大小测量,网上有很多例子,大多数是申请一个对象后开始做GC,后对比前后的大小,不过这样,虽然说这样测量对象 ...
- mongodb配置及简单示例
安装 在官网下载安装 https://www.mongodb.com/ 配置 我的电脑—>右键属性—>左边列表中的高级程序设置—>环境变量 点击path 把你的mongodb文件路径 ...
- 32-HTML辅助方法
顾名思义,HTML辅助方法(HTML Helper)就是用来辅助产生HTML之用,在开发View的时候一定会面对许多HTML标签,处理这些HTML的工作非常繁琐,为了降低View的复杂度,可以使用HT ...
- Shell基础:变量类型 & 运算符
Shell变量 Shell支持三种类型的变量 用户自定义变量:用户自定义的变量,变量名以英文字母或下划线开头,区分大小写. 位置变量:根据位置传递参数给脚本的变量,默认支持9个位置变量 $1,$2,$ ...
- Web总结
Web总结 学习web前端理论基础必然是要过关的,这里我总结了一下比较基础的常用理论,还是比较有用哒! 一.名词解释 1.横切 在固定页面的宽度(按栅格化进行)并且对高度没有限制的容器称为一个标准横切 ...
- git在公司内部的使用实践(转)
从2011.10月左右,开始在后台组推行git版本控制,到现在也差不多半年了,也形成了一套基于git flow的副官模式工作流程: 版本定义: 版本号使用x.x.x进行定义,第一个x代表大版本只有在项 ...
- jupyter
Pip install jupyter To run: jupyter notebook 基本操作 执行当前cell,并自动跳到下一个cell:Shift Enter 执行当前cell,执 ...
- 使用C#下载网络文件
下载 /// <summary> /// 下载文件 /// </summary> /// <param name="URL">下载文件地址< ...
- 3D开发的基本知识
为了实现3D图形,程序员需要定义两个方面的数据: 1.3D图形的每个顶点(Vertex)的位置,每个顶点的位置都需要X.Y.Z三个左标值. 2.3D图形每个面由哪些顶点组成. Android的3D坐标 ...