cf13C Sequence(DP)
题意:
N个数。a1...aN。
对于每个数而言,每一步只能加一或减一。
问最少总共需要多少步使得新序列是非递减序列。
N (1 ≤ N ≤ 5000)
思路:
*一个还不知道怎么证明的结论(待证):最后的新序列b1...bN中的每一个数bi,一定是原a1..aN序列中的某个数。
将a1..aN从小到大排列,得到c1...cN。
dp[i][j]:原序列前i个数经过操作,第i个数不超过c[j]所花最少步数。
dp[i][j]=min( dp[i-1][j]+abs(a[i]-b[j]),dp[i][j-1] )
然后用滚动数组。
代码:
int const N=5005; int n; ll a[N],b[N]; ll dp[N];int main(){cin>>n;rep(i,1,n){scanf("%I64d",&a[i]);b[i]=a[i];}mem(dp,0);dp[0]=INF;sort(b+1,b+1+n);rep(i,1,n){ //前i个rep(j,1,n){ //最后一个高度不超过第b[j]个的高度dp[j]=min( dp[j]+abs(a[i]-b[j]),dp[j-1] );}}ll ans=INF;rep(i,1,n){ans=min(ans,dp[i]);}printf("%I64d\n",ans);return 0; }
转载于:https://www.cnblogs.com/fish7/p/4318136.html
cf13C Sequence(DP)相关推荐
- 【XSY2564】sequence(dp)
题面 [题目描述] 给定一个长度为nnn的由['0'...'9'][\text{'}0\text{'}...\text{'}9\text{'}]['0'...'9']组成的字符串sss,v[i,j]v ...
- HDU 6078 Wavel Sequence (dp)
Description Have you ever seen the wave? It's a wonderful view of nature. Little Q is attracted to s ...
- HDOJ-2062 :Subset sequence(DP)
题目:求子集序列 Consider the aggregate An= { 1, 2, -, n }. For example, A1={1}, A3={1,2,3}. A subset sequen ...
- HDU 6078 Wavel Sequence(dp)
Description 定义波浪序列:a1 > a2 < a3-,现在给出一个长度为n的序列a和一个长度为m的序列b,求a和b的公共波浪子序列个数 Input 第一行一整数T表示用例组数, ...
- 【Codeforces】CF 5 C Longest Regular Bracket Sequence(dp)
题目 传送门:QWQ 分析 洛谷题解里有一位大佬讲的很好. 就是先用栈预处理出可以匹配的左右括号在数组中设为1 其他为0 最后求一下最长连续1的数量. 代码 1 #include <bits/s ...
- 【UVa】Wavio Sequence(dp)
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...
- 【CF 149D】Coloring Brackets(dp)
[CF 149D]Coloring Brackets(dp) D. Coloring Brackets time limit per test 2 seconds memory limit per t ...
- 求三角形最大面积(DP)
求三角形最大面积(DP) 在OJ上奇迹般WA了:WA:70. Why? #include <iostream> #include <string.h> using namesp ...
- LeetCode 编辑距离 II(DP)
1. 题目 给你两个单词 s 和 t,请你计算出将 s 转换成 t 所使用的最少操作数. 你可以对一个单词进行如下两种操作: 删除一个字符 替换一个字符 注意: 不允许插入操作 题目保证有解 示例: ...
最新文章
- python基础知识整理 第一节:入门记录(包含代码与执行结果)
- 一个好域名的作用和价值
- web前端入门学习 html5(2)
- IDEA入门之web项目导入jar包
- DataWorks 功能实践速览03期 — 生产开发环境隔离
- 初次接触GWT,知识点总括
- C++——《算法分析》实验叁——贪心算法与回溯法
- 【C语言】C语言的数据类型
- Linux 正则表达式 流编辑之sed awk
- 【转贴】gdb中的信号(signal)相关调试技巧
- easyui datagrid的getSelections只获取一行问题
- 使用 grep 查找所有包含指定文本的文件
- linux三剑客之awk
- 为什么Word字间距异常的大?怎么修正排版?
- 中国与印度软件工程师之比较…
- 搭建一个vue小页面(入门vue)
- 教你解决“邮件”应用不断提示输入密码的方法!
- 2021年遭遇苹果审核2.3.1的开发过审经历
- 阿里自然语言处理部总监分享:NLP技术的应用及思考
- AI大语音(一)——语音识别基础(深度解析)