hdu1421 dp
用dp[i][j]表示放了i件物品,j对时的最小值。
dp[i-2][j-1]表示取当前的 dp[i-1][j]表示不取当前的。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
#define maxn 2002
#define INF 99999999
int dp[maxn][],a[maxn];
int min(int x,int y)
{
return x<y?x:y;
}
int main()
{
int i,j,n,k;
while(scanf("%d%d",&n,&k)!=EOF)
{
for(i=;i<=n;i++)
scanf("%d",&a[i]);
sort(a+,a+n+); memset(dp,,sizeof(dp)); for(i=;i<=n;i++){
for(j=;j<=k;j++){
dp[i][j]=INF;
}
}
for(i=;i<=n;i++)
{
dp[i][]=;
} for(i=;i<=n;i++)
{
for(j=;j<=k;j++)
{
//dp[i-2][j-1]表示取当前的 dp[i-1][j]表示不取当前的
dp[i][j]=min(dp[i-][j-]+(a[i]-a[i-])*(a[i]-a[i-]),dp[i-][j]);
}
}
printf("%d\n",dp[n][k]);
}
}
/*
3 1
2 5 6
5 2
1 3 4 7 8
*/
hdu1421 dp的更多相关文章
- DP HDU1421
搬寝室 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- hdu1421 搬寝室(dp)
此题是动态规划题. 解题思路: 用w[i]存储n个物品的重量,对其进行排序. 那么当取了第i个物品,必然会取第i-1个物品. 令dp[i][j]表示前i个物品,取j对的最小疲劳度. 若取第i个物品 则 ...
- hdu---(1421)搬寝室(dp)
搬寝室 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- hdu1421 搬寝室 DP
转载: /*证明:从4个数中 a b c d 依次递增: 选取相邻的两个数一定是最小得 及:(a-b)^2+(c-d)^2<(a-c)^2+(b-d)^2&&(a-b)^2+( ...
- HDU1421搬寝室(简单DP)
当然,还可以加滚动数组优化. #include<cstdio> #include<cstdlib> #include<iostream> #include<m ...
- hdu-1421(dp)
解题思路:dp[i][j]表示前i个物品中取k对所要的最小花费: 首先得对物品进行处理,因为需要当前物品减前一个物品的平方和最小: 所以先排序,因为排序的相邻两个的差的平方一定最小: 然后转移方程:d ...
- HDU-1421 搬寝室【dp】
题目链接:https://vjudge.net/contest/214662#problem/E 题目大意: ...
- HDU1421:搬寝室(线性dp)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1421 又是一道,没有思想的题,看了题解,我发现我的dp题几乎都看了题解,我总是想不好状态转移方程,汗颜,以 ...
- hdu-1421搬寝室(dp)
http://acm.hdu.edu.cn/showproblem.php?pid=1421; 思路:先将所给的椅子的价值按升序排列,举个例子,四张椅子的价值分别为a,b,c,d(a<b< ...
随机推荐
- python函数当容器
def func(): pass func2 = func func2() i = [func,func2] for a in i: a() 函数名就是内存地址,加()代表执行
- 切片 及 range 点睛回炉
print(list(range(-1,-5,-1))) # [-1, -2, -3, -4] # range(x,y,z) ''' 首先把 x的数值放在 数轴上 z 的正负决定 x 向前搜索(为正) ...
- Vue. 之 报错 Uncaught (in promise)
Vue. 之 报错 Uncaught (in promise) 在点击同一个URL的时候,会报错如下: 解决方案: 在项目目录下运行 npm i vue-router@3.0 -S 即可.
- JUnit4中@Before、@After、@Test等注解的作用
转载:https://blog.csdn.net/tn_java/article/details/53837024 JUnit4使用Java5中的注解(annotation),以下是JUnit4常用的 ...
- 【Java爬虫】爬取南通大学教务处成绩
没使用自动登录,所以获取是比较麻烦.. 1.http://jwgl.ntu.edu.cn/cjcx 进入官网,进行账号密码登录 2.点击全部成绩查询(也一定要点进去,不然cookie不会返回值) ...
- Vue中利用$emit实现子组件向父组件通信
Vue中利用$emit实现子组件向父组件通信 父组件 <template> <div> <p>我是父组件</p> <child :isShow=& ...
- Codeforces 222B 数组行列交换操作
/*做完这题发现自己好水,太伤人了.... 不过还是学到一些,如果直接暴力模拟的话肯定是TLM.. 所以要用虚拟数组来分别保存当前数组的每行没列在初始数组中的位置...*/ #include<c ...
- 深度优先搜索(Depth-First-Search)精髓
引例:迷宫问题 首先我们来想象一只老鼠,在一座不见天日的迷宫内,老鼠在入口处进去,要从出口出来.那老鼠会怎么走?当然可以是这样的:老鼠如果遇到直路,就一直往前走,如果遇到分叉路口,就任意选择其中的一条 ...
- mysql hibernate 查询ip地址在mysql的网段
买的数据库,地址是字符串格式 如何查询一个确定的ip在哪里呢? 直接通过字符串查询估计要慢死了 可以先把自己的要查询的ip转换为数字,然后再去以数字的方式查询 IP转数字1.2.6.0转为数字 SEL ...
- Amazon EBS的功能更新
Amazon EBS(Elastic Block Store.简称EBS) 为 Amazon EC2 实例提供块级存储服务.EBS 卷须要通过网络訪问,而且能独立于实例的生命周期而存在.也就是说假如E ...