问题4381--看护鱼塘4381: 看护鱼塘
时间限制: 1 Sec 内存限制: 512 MB
提交: 0 解决: 0
[提交] [状态] [讨论版] [命题人:]题目描述
这天晚上,约翰做了个奇怪的美梦。他拥有了分别分布在N座高高低低的山上的N个池塘,N座山连成一条直线,从左往右第i座山的高度是Hi。池塘中的鱼都是他请专家运用科学的方法专门养殖的,为了保护每个池塘的生态环境,他现在要在这N座山上建造若干个看护点。约翰是个很节约的人,在第i座山建造看护点的花费为Ci。假设在第i座山建造一个看护点,则往左或者往右第一座不比这座山低的山将挡住看护的视线。譬如说:
{Hi} = {1 4 4 5 7 2}表示第一座山高度为1,第二座山高度为4。。。
如果在第1座山建造一个看护点,则可以看护第1,2两个池塘。如果在第5座山上建造一个看护点,则左右的池塘都能被看护到。如果在第3座山上建造一个看护点,则能够看护到第2,3,4个池塘。
要求能够看护到所有的池塘,建造看护点的最小代价是多少。即建造看护点的山对应的花费Ci之和最小。
输入
第一行包含一个正整数N,N满足1<=N<=1000。
第二行包含N个正整数,第i个正整数Hi满足1<=Hi<=10^5,表示第i座山的高度
第三行包含N个正整数,第i个正整数Ci满足1<=Ci<=10^5,表示在第i座山建造看护点的代价为Ci
输出
一行包含一个正整数C,表示最小的代价。
样例输入
样例1:
3
1 1 1
2 2 2
样例2:
5
2 1 4 5 3
2 4 1 6 3
样例输出
(1)
2
样例1说明:选取2号点,可以看到两边的,代价是2
(2)
4
样例2说明:选取3号点和5号点
来源/分类
[提交] [状态]