2021.8.16提高B组模拟7T3 + P7414 [USACO21FEB] Modern Art 3(动态规划)
Posted SSL_LKJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021.8.16提高B组模拟7T3 + P7414 [USACO21FEB] Modern Art 3(动态规划)相关的知识,希望对你有一定的参考价值。
Modern Art 3
输入样例
10
1 2 3 4 1 4 3 2 1 6
输出样例
6
解题思路
dp
设 f i , j f_i,_j fi,j为区间 i - j 需要最少颜料的值
AC代码
#include<algorithm>
#include<cstring>
#include<cstdio>
using namespace std;
int n,a[305],f[305][305];
int main()
{
memset(f,0x7f,sizeof(f));
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]),f[i][i]=1;//初值
for(int l=1;l<=n;l++)//枚举长度
for(int head=1;head+l<=n;head++)//枚举开头
{
int tail=head+l;//求尾
if(a[head]==a[tail])f[head][tail]=min(f[head+1][tail],f[head][tail-1]);//状态转移
else for(int k=head;k<tail;k++)f[head][tail]=min(f[head][tail],f[head][k]+f[k+1][tail]);
}
printf("%d",f[1][n]);
return 0;
}
谢谢
以上是关于2021.8.16提高B组模拟7T3 + P7414 [USACO21FEB] Modern Art 3(动态规划)的主要内容,如果未能解决你的问题,请参考以下文章
2021.7.19提高B组模拟7T3 只不过是长的领带(贪心)
2021.8.16提高B组模拟7T2 + P7413 [USACO21FEB] Stone Game(贪心)
2021.8.16提高B组模拟7T2 + P7413 [USACO21FEB] Stone Game(贪心)