题目:https://www.luogu.org/problemnew/show/P4059

dp。

1.看出-A-B(k-1)可以理解成连续空格的第一个 -A,其余 -B;

2.把会干扰的“上一步右端是不是空格”加进参数里;

3.初始化!!!!!!!

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char ch;
int a[],b[],n,m,c[][],d[][][][],A,B;
int num(char chh)//A=65 T=84 G=71 C=67
{
if(chh=='A')return ;
if(chh=='T')return ;
if(chh=='G')return ;
if(chh=='C')return ;
}
int main()
{
while()
{
scanf("%c",&ch);
if(ch==' ')continue;
if(ch=='\n')break;
a[++n]=num(ch);
}
while()
{
scanf("%c",&ch);
if(ch==' ')continue;
if(ch=='\n')break;
b[++m]=num(ch);
}
for(int i=;i<=;i++)
for(int j=;j<=;j++)
scanf("%d",&c[i][j]);
scanf("%d%d",&A,&B);
memset(d,-,sizeof d);
d[][][][]=-A;
for(int i=;i<=m;i++)
d[][i][][]=d[][i-][][]-B;
d[][][][]=-A;
for(int i=;i<=n;i++)
d[i][][][]=d[i-][][][]-B;
d[][][][]=;
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
{
d[i][j][][]=max(d[i-][j-][][],max(d[i-][j-][][],d[i-][j-][][]))+c[a[i]][b[j]];
d[i][j][][]=max(d[i][j-][][]-B,max(d[i][j-][][]-A,d[i][j-][][]-A));
d[i][j][][]=max(d[i-][j][][]-B,max(d[i-][j][][]-A,d[i-][j][][]-A));
}
int ans=max(d[n][m][][],max(d[n][m][][],d[n][m][][]));
printf("%d",ans);
return ;
}

洛谷4059找爸爸(Code+第一次月赛)的更多相关文章

  1. 洛谷 P1509 找啊找啊找GF(复习二维费用背包)

    传送门 题目背景 "找啊找啊找GF,找到一个好GF,吃顿饭啊拉拉手,你是我的好GF.再见." "诶,别再见啊..." 七夕...七夕...七夕这个日子,对于sq ...

  2. 洛谷——P2083 找人

    P2083 找人 题目背景 无 题目描述 小明要到他的同学家玩,可他只知道他住在某一单元,却不知住在哪个房间.那个单元有N层(1,2……N),每层有M(1,2……M)个房间. 小明会从第一层的某个房间 ...

  3. 洛谷 P1509 找啊找啊找GF

    题目背景 "找啊找啊找GF,找到一个好GF,吃顿饭啊拉拉手,你是我的好GF.再见." "诶,别再见啊..." 七夕...七夕...七夕这个日子,对于sqybi这 ...

  4. 洛谷——P1469 找筷子

    P1469 找筷子 题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘 ...

  5. 洛谷P1469找筷子

    题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题,筷子!CX ...

  6. 洛谷 P1469 找筷子

    题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题,筷子!CX ...

  7. 洛谷 P2083 找人

    P2083 找人 题目背景 无 题目描述 小明要到他的同学家玩,可他只知道他住在某一单元,却不知住在哪个房间.那个单元有N层(1,2……N),每层有M(1,2……M)个房间. 小明会从第一层的某个房间 ...

  8. 洛谷P1938 找工就业

    传送门啦 这个题本质就是跑一边最长路,重点就是在怎么建图上. 我们可以把点权放到边权上面,即将每一个边的终点点权当做这个边的边权,这个题里就是将工钱 $ d $ 当做边权. 如果这一条边需要坐飞机才能 ...

  9. 洛谷 P1469 找筷子 题解

    题目传送门 先排序一遍,再一个一个判断是否有偶数个.注意for循环要i+=2. #include<bits/stdc++.h> using namespace std; ]; int ma ...

随机推荐

  1. OC id类型

    id数据类型可存储任何类型的对象.从某种意义说,它是一般对象类型. -------------------------"NormalMan.h"------------------ ...

  2. @RunWith和 SpringJUnit4ClassRunner ---->junit4和Spring一起使用

    今天在看Spring的Demo的时候,看到了如此单元测试的写法 如下: @RunWIth(SpringJunit4ClassRunner.class) @ContextConfiguration(lo ...

  3. 快速切题 sgu119. Magic Pairs

    119. Magic Pairs time limit per test: 0.5 sec. memory limit per test: 4096 KB “Prove that for any in ...

  4. scrapy-redis基础和介绍

    一.scrapy-redis(0.6)依赖的环境 Scrapy >= 1.0.0                #终于过了1版本,这个太重要了,总算坑小了点,感谢那些为了解决各种scrapy与s ...

  5. 往SD卡中写文件的方法。

    package com.lixu.writetosd; import java.io.File; import java.io.FileOutputStream; import java.io.IOE ...

  6. Visual Studio build tools 安装出错的一种解决办法

    一般是安装包丢失或损坏,那么我么可以用离线下载的方式来先行下载. 用 -h 看下帮助 主要是Layout参数. 下载完,到下载目录安装吧.

  7. Java——IO类,字符流写数据

    body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...

  8. spring 定时任务参数配置详解

    注:本文摘自<Quartz Cron 触发器 Cron Expression 的格式>http://blog.csdn.net/yefengmeander/article/details/ ...

  9. FMX StringGrid向上滑动自动加载记录(一)

    有时候,做的app还是需要用StringGrid来显示数据,但如果用StringGrid的Livebinding绑定到一个数据集TDataset,当记录超过1000条时,效率非常低,甚至达不到实用状态 ...

  10. About RFC

    RFC说明 Request For Comments (RFC),是一系列以编号排定的文件,几乎所有的因特网标准都收录在RFC文件之中,如果你想成为网络方面的专家,那么RFC无疑是最重要也是最经常需要 ...