博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj1160
阅读量:7205 次
发布时间:2019-06-29

本文共 924 字,大约阅读时间需要 3 分钟。

动态规划

ContractedBlock.gif
ExpandedBlockStart.gif
View Code
 
#include
<
iostream
>
#include
<
cstdio
>
#include
<
cstdlib
>
#include
<
cstring
>
using
namespace
std;
#define
maxv 305
#define
maxp 35
int
cost[maxp][maxv];
int
d[maxv][maxv];
int
village[maxv];
int
v, p;
int
main()
{
//
freopen("t.txt", "r", stdin);
scanf(
"
%d%d
"
,
&
v,
&
p);
for
(
int
i
=
1
; i
<=
v; i
++
)
scanf(
"
%d
"
,
&
village[i]);
memset(d,
0
,
sizeof
(d));
for
(
int
i
=
1
; i
<
v; i
++
)
for
(
int
j
=
i
+
1
; j
<=
v; j
++
)
d[i][j]
=
d[i][j
-
1
]
+
village[j]
-
village[(i
+
j)
/
2
];
memset(cost,
0
,
sizeof
(cost));
for
(
int
i
=
1
; i
<=
v; i
++
)
cost[
1
][i]
=
d[
1
][i];
for
(
int
i
=
2
; i
<=
p; i
++
)
for
(
int
j
=
i; j
<=
v; j
++
)
{
cost[i][j]
=
1000000000
;
for
(
int
r
=
j
-
1
; r
>=
i
-
1
; r
--
)
cost[i][j]
=
min(cost[i][j], cost[i
-
1
][r]
+
d[r
+
1
][j]);
}
printf(
"
%d\n
"
, cost[p][v]);
return
0
;
}

转载于:https://www.cnblogs.com/rainydays/archive/2011/06/25/2090242.html

你可能感兴趣的文章
Use dynamic type in Entity Framework 4.1 SqlQuery() method
查看>>
《Python CookBook2》 第四章 Python技巧 - 若列表中某元素存在则返回之 && 在无须共享引用的条件下创建列表的列表...
查看>>
redhat网卡设置
查看>>
javascript 的作用域
查看>>
JFinal极速开发框架使用笔记(二) 两个问题,一个发现
查看>>
AutoCompleteTextView
查看>>
SecureCRT生成序列
查看>>
Android 应用程序主框架搭建
查看>>
2012腾讯春季实习生面试经历(二)
查看>>
用Bootstrap框架弹出iframe页面 在弹出的模态框中载人iframe页面,bootstrapiframe
查看>>
2012腾讯暑期实习面经(技术类web前端)
查看>>
第3种方法获取redis cluster主从关系
查看>>
注册表管理(本地、远程)
查看>>
《Linux内核设计与实现》第四周读书笔记——第五章
查看>>
关于COM组件log的位置
查看>>
C++操作符重载
查看>>
postgresql 时间戳格式为5分钟、15分钟
查看>>
linq中如何在join中指定多个条件
查看>>
交换排序
查看>>
【转】链表归并排序插入排序
查看>>