当前位置: 首页 > news >正文

洛谷 P2904 [USACO08MAR] River Crossing S

P2904 [USACO08MAR] River Crossing S

题目描述

农夫约翰以及他的 \(N(1 \le N \le 2500)\) 头奶牛打算过一条河,但他们所有的渡河工具,仅仅是一个木筏。

由于奶牛不会划船,在整个渡河过程中,约翰必须始终在木筏上。在这个基础上,木筏上的奶牛数目每增加 \(1\),FJ把木筏划到对岸就得花更多的时间。

当约翰一个人坐在木筏上,他把木筏划到对岸需要 \(M(1 \le M \le 1000)\) 分钟。当木筏搭载的奶牛数目从 \(i-1\) 增加到 \(i\) 时,约翰得多花 \(M_i(1 \le M_i \le 1000)\) 分钟才能把木筏划过河(也就是说,船上有 \(1\) 头奶牛时,约翰得花 \(M+M_1\) 分钟渡河;船上有 \(2\) 头奶牛时,时间就变成 \(M+M_1+M_2\) 分钟。后面的以此类推)。那么,约翰最少要花多少时间,才能把所有奶牛带到对岸呢?当然,这个时间得包括约翰一个人把木筏从对岸划回来接下一批的奶牛的时间。

输入格式

  • 第一行包含 \(2\) 个整数 \(N\)\(M\)
  • \(2\) 行至第 \(N + 1\) 行,其中第 \(i + 1\) 行包含 \(1\) 个整数 \(M_i\)

输出格式

  • 输出共 \(1\) 行,为农夫约翰让所有奶牛过河所需的最短时间。

输入输出样例 #1

输入 #1

5 10 
3 
4 
6 
100 
1 

输出 #1

50 

说明/提示

有五头牛,农夫约翰独自过河需要 \(10\) 分钟,带一头牛需要 \(13\) 分钟,带两头牛需要 \(17\) 分钟,带三头牛需要 \(23\) 分钟,带四头牛需要 \(123\) 分钟,带五头牛需要 \(124\) 分钟。

农夫约翰可以先带三头牛过河(\(23\) 分钟),然后独自返回(\(10\) 分钟),再带最后两头牛过河(\(17\) 分钟)。总共耗时 \(23+10+17=50\) 分钟。

解题思路:当我们把n看出一个背包的容量,运i头牛需要\(m_{i}\)的时间,把i看成物品的体积,\(m_{i}\)看成价值,那么这就是一个01背包问题。

//转换为01背包和完全背包求解,速度最快,复杂度O(V*Σlog n[i])
#include <bits/stdc++.h>
using namespace std;
int n,v,dp[50001]; //物品数量和背包容量
int m,ans=1e9+9;
int i,j,k,w[50001],p[50001],c[50001];
int main()
{cin>>n>>m;w[0]=m;for(i=1;i<=n;i++) {cin>>p[i];w[i]=w[i-1]+p[i];}// for (int i = 1; i <= n; i++) dp[i] = 1000000000;// dp[1] = dp[0] + w[1] + m;for (int i = 1; i <= n; i++) dp[i]=w[i]+m;;for(i=2;i<=n;i++) {for(j=0;j<=i-1;j++) {dp[i]=min(dp[i],dp[j]+w[i-j]+m);}}cout<<dp[n]-m<<endl;return 0;
}
http://www.jsqmd.com/news/540136/

相关文章:

  • 【Cuvil编译器实战指南】:Python AI推理加速从0到10倍性能跃迁的7个关键编译优化步骤
  • 如何高效使用PDF Arranger:免费开源PDF管理工具完整指南
  • 5大突破:抖音音乐批量下载与智能管理解决方案
  • 2026南昌合规网约车租赁优质服务商推荐 - 资讯焦点
  • Element React深度解析:企业级React组件库的架构设计与实战应用
  • 2026台达风扇代理商实力排行 高效散热优选 适配双碳战略多领域 - 极欧测评
  • 2026冰箱压缩机配件高服务品质供应商推荐 - 资讯焦点
  • 华为光猫配置解密工具全解析:从加密破解到网络运维实战指南
  • 星露谷物语终极效率指南:5个必装模组彻底改变你的农场生活
  • Harmonyos应用实例206:抛物线的光学性质
  • FlexASIO:打破专业音频壁垒的通用驱动解决方案
  • 行业标杆!2026台达风扇代理商推荐排行 品质之选 通信/工控/储能 - 极欧测评
  • 2026哈尔滨优质驾驶员培训学校推荐榜 口碑甄选 - 资讯焦点
  • 基于物联网的本科毕业设计:从选题到部署的全链路技术指南
  • 零基础入门:时空预测的系统化学习笔记
  • 颠覆式Windows优化:Win11Debloat让系统重获新生的革新方案
  • 面试官问“模型胡说八道怎么办”,我卡壳了:AI 系统设计到底在考什么?
  • 从座舱芯片到指尖触控:聊聊高通8155/8295上那个你可能没注意到的Virtio Touch框架
  • 直播弹幕录制:如何永久保存每一场直播的精彩互动?
  • SEO_移动端SEO优化的关键步骤与注意事项介绍
  • 基于非线性干扰观测器(NDOB)的滑模控制(SMC)Boost变换器:EI期刊控制复现探索
  • ICRS-101机器人手动控制API协议设计与嵌入式实现
  • 给父母护肺就选肺立方!2026中老年槲皮素清肺产品十强实测,原知因肺立方安全有效双认证 - 资讯焦点
  • FreeRTOS学习笔记(7):任务延时列表的实现
  • Qwen2.5-72B-Instruct-GPTQ-Int4部署教程:镜像内预置benchmark脚本使用
  • Chatbot Arena排行榜单实战指南:从数据采集到模型优化
  • 2026年包装机械行业铝塑泡罩包装机推荐指南 - 资讯焦点
  • 2026PCB生产环节过滤材料优质供应商推荐 - 资讯焦点
  • 智能客服方案库物流JSON格式优化:从数据冗余到高效解析
  • 基于数据库的制造过程查询智能客服:从零搭建与性能优化实战