LightOJ 1422 Halloween Costumes 【 区间dp 】
区间dp的第一题-----
看题解看了好多~~终于看懂了---55555
dp[i][j] 表示第i天到第j天至少需要多少件衣服
那么第i件衣服只被第i天占用的话, dp[i][j] = dp[i+1][j] + 1
如果不只被第i天占用的话,那么假设在第k天和第i天穿一样的衣服,dp[i][j] = dp[i+1][k-1] + dp[k][j]
这一篇讲得很详细~
http://blog.csdn.net/tc_to_top/article/details/44830317
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std; int dp[][];
int a[];
int n; int main(){
int T;
int kase = ;
scanf("%d",&T);
while(T--){
scanf("%d",&n);
for(int i = ;i <= n;i++) scanf("%d",&a[i]); for(int i = ;i <= n;i++)
for(int j = i;j <= n;j++) dp[i][j] = ; for(int i = n-;i >= ;i--){
for(int j = i;j <= n;j++){
dp[i][j] = dp[i+][j] + ;
for(int k = i+;k <= j;k++){
if(a[k] == a[i]) dp[i][j] = min(dp[i][j],dp[i+][k-] + dp[k][j]);
// printf("dp[%d][%d] = %d\n",i,j,dp[i][j]);
}
}
}
printf("Case %d: %d\n",++kase,dp[][n]);
}
return ;
}
用记忆化搜索写半天都木有写出来啊啊啊啊~~~
初始化还是不懂写啊~~~
该滚了~~~
LightOJ 1422 Halloween Costumes 【 区间dp 】的更多相关文章
- LightOJ - 1422 Halloween Costumes —— 区间DP
题目链接:https://vjudge.net/problem/LightOJ-1422 1422 - Halloween Costumes PDF (English) Statistics F ...
- LightOJ 1422 Halloween Costumes 区间dp
题意:给你n天需要穿的衣服的样式,每次可以套着穿衣服,脱掉的衣服就不能再穿了,问至少要带多少条衣服才能参加所有宴会 思路:dp[i][j]代表i-j天最少要带的衣服 从后向前dp 区间从大到小 更新d ...
- light oj 1422 Halloween Costumes (区间dp)
题目链接:http://vjudge.net/contest/141291#problem/D 题意:有n个地方,每个地方要穿一种衣服,衣服可以嵌套穿,一旦脱下的衣服不能再穿,除非穿同样的一件新的,问 ...
- Light OJ 1422 - Halloween Costumes(区间DP 最少穿几件)
http://www.cnblogs.com/kuangbin/archive/2013/04/29/3051392.html http://www.cnblogs.com/ziyi--caolu/a ...
- LightOj 1422 Halloween Costumes(区间DP)
B - Halloween Costumes Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%lld & %llu Submit ...
- 区间DP LightOJ 1422 Halloween Costumes
http://lightoj.com/volume_showproblem.php?problem=1422 做的第一道区间DP的题目,试水. 参考解题报告: http://www.cnblogs.c ...
- LightOJ - 1422 Halloween Costumes (区间dp)
Description Gappu has a very busy weekend ahead of him. Because, next weekend is Halloween, and he i ...
- LightOJ 1422 Halloween Costumes (区间DP,经典)
题意: 有个人要去参加万圣节趴,但是每到一个趴都要换上特定的服装,给定一个序列表示此人要穿的衣服编号(有先后顺序的),他可以套很多件衣服在身上,但此人不喜欢再穿那些脱下的衣服(即脱下后就必须换新的), ...
- 【LightOJ 1422】Halloween Costumes(区间DP)
题 题意 告诉我们每天要穿第几号衣服,规定可以套好多衣服,所以每天可以套上一件新的该号衣服,也可以脱掉一直到该号衣服在最外面.求最少需要几件衣服. 分析 DP,dp[i][j]表示第i天到第j天不脱第 ...
随机推荐
- 【剑指Offer】58、对称的二叉树
题目描述: 请实现一个函数,用来判断一颗二叉树是不是对称的.注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的. 解题思路: 本题判断一棵树是不是对称的,和第18题可以对比分 ...
- 设置快捷键用sublime直接打开浏览器
1.安装sidebarenhancements插件 ctrl+shift+p —> Install Package —> 找到SideBarEnhancements 2.配置预览快捷键 / ...
- mysql 怎样先排序再分组
权游游牧族:众所周知!一句SqL语句不能先排序再分组.所以这里给出几个案例 --表结构-- create table `shop` ( `id` int (10) PRIMARY KEY, `shop ...
- 47.serch基本语法
主要知识点 1._search api基本语法 2.http协议中get请求带上request body 一.search api的基本语法 1.GET /_search {所传递的参 ...
- python中的二进制、八进制、十六进制
python中通常显示和运算的是十进制数字. 一.python中的二进制 bin()函数,将十进制转换为二进制,0b是二进制的前缀.如: >>> bin(10) '0b1010' 二 ...
- WEB测试范围小结
根据<用户需求说明手册>和<需求分析说明书>,分析各个功能模块.针对各个功能模块进行相关功能的测试. 链接测试 链接是Web 网站的一个主要特征,它是在页面之间切换和引导用户去 ...
- VS的代码管理工具
参考文章 可以从中知道修改代码段是要打开相关路径下的文档来修改 官方下载地址 百度云盘 如果项目中国有一些代码重复率非常高,可以把这些代码做成snippet代码段,简化成快捷键命令,加速开发
- nutch的定时增量爬取
译文来着: http://wiki.apache.org/nutch/Crawl 介绍(Introduction) 注意:脚本中没有直接使用Nutch的爬去命令(bin/nutch crawl或者是& ...
- Android Internet - WebView 的使用
WebView是Android 提供的操作网页的一个组件. 用于浏览网页及其它Internet资源. 这里总结了一些WebView 的经常使用接口.和2个小演示样例程序用于自己开发时直接使用.就不用再 ...
- 邮箱smtpserver及port收集
网易 163邮箱 POP3:pop.126.com SMTP:smtp.126.com SMTPport号:25 126邮箱 POP3:pop.126.com SMTP:smtp.126.co ...