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

P2858 [USACO06FEB] Treats for the Cows G/S

题目描述

约翰经常给产奶量高的奶牛发特殊津贴,于是很快奶牛们拥有了大笔不知该怎么花的钱。为此,约翰购置了 N(1≤N≤2000)份美味的零食来卖给奶牛们。每天约翰售出一份零食。当然约翰希望这些零食全部售出后能得到最大的收益,这些零食有以下这些有趣的特性:

  • 零食按照 1,…,N 编号,它们被排成一列放在一个很长的盒子里。盒子的两端都有开口,约翰每天可以从盒子的任一端取出最外面的一个。
  • 与美酒与好吃的奶酪相似,这些零食储存得越久就越好吃。当然,这样约翰就可以把它们卖出更高的价钱。
  • 每份零食的初始价值不一定相同。约翰进货时,第 i 份零食的初始价值为 Vi​(1≤V≤1000)。
  • 第 i 份零食如果在被买进后的第 a 天出售,则它的售价是 Vi​×a。

Vi​ 表示的是从盒子顶端往下的第 i 份零食的初始价值。约翰告诉了你所有零食的初始价值,并希望你能帮他计算一下,在这些零食全被卖出后,他最多能得到多少钱。

输入格式

第一行一个正整数 N。

接下来 2∼N+1 行,第 i+1 行为一个正整数 Vi​。

输出格式

一行一个整数表示答案。

输入输出样例

输入 #1复制

5 1 3 1 5 2

输出 #1复制

43

说明/提示

样例的最优解是:按 1→5→2→3→4 的顺序卖零食,得到的钱数是 1×1+2×2+3×3+4×1+5×5=43。

代码DFS

#include <bits/stdc++.h> using namespace std; int v[2005],n; int ans; void DFS(int day,int shang,int xia,int jia){ if(shang==xia){ ans=max(ans,jia+v[shang]*day); return; } DFS(day+1,shang+1,xia,jia+day*v[shang]); DFS(day+1,shang,xia-1,jia+day*v[xia]); } int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>v[i]; } DFS(1,1,n,0); cout<<ans; return 0; }

代码DP

#include<bits/stdc++.h> using namespace std; const int N=2005; int n,dp[N][N],v[N]; int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>v[i]; } for(int i=1;i<=n;i++){ for(int j=n;j>=i;j--){ int a=n-(j-i+1); dp[i][j]=max(dp[i-1][j]+v[i-1]*a,dp[i][j+1]+v[j+1]*a); } } int maxn=0; for(int i=1;i<=n;i++){ maxn=max(maxn,dp[i][i]+v[i]*n); } cout<<maxn; return 0; }

http://www.jsqmd.com/news/1357253/

相关文章:

  • 2026年8月湖南省移动1000M宽带办理避坑攻略,实测分享 - 找卡家园
  • RAG 模型选型指南
  • 推荐题目:洛谷 P3674 小清新人渣的本愿
  • Runnable与LCEL
  • Hive多级分桶技术原理与大数据查询优化实践
  • BIM参数化建模:创建可镜像门窗阳台族提升设计效率
  • 一个月4起!AI大模型集体“越狱“,沙箱安全防线为何形同虚设?万字拆解背后真相与应对之策
  • 渗透测试信息收集完全指南:从 0 到 1,决定 80% 成败的第一步
  • HarmonyOS 6开发环境搭建与Stage模型实践指南
  • AI 编程进阶实战:我为什么要做这个专栏
  • Unity角色动画技术选型指南:从逐帧到骨骼的实战决策
  • 对话状态跟踪:AI如何自动关联“退款流程”与“需要多久
  • 一个把“常用开发转换工具”都搬进浏览器的网站:123024.com
  • Codex客户端接入低价AI API实战:从环境配置到错误排查
  • ESP32 中分区表分析与说明
  • bitsandbytes:8-bit量化优化深度学习训练与推理
  • AMD Ryzen处理器终极调试工具:5分钟掌握专业性能优化
  • 2026年免费AI工具评测与学术应用指南
  • Python分形艺术:用代码创造无限视觉可能
  • 【创作128天纪念】从新手村踏上征途
  • 基于Python的用户反馈分析实战:从文本处理到洞察生成
  • 基于C# Winform与OpenTK的轻量级3D模型查看器开发实践
  • 小米智能摄像机4 Max AI变焦版评测:AI追踪与物理变焦如何提升家庭安防体验
  • 开源AI音乐检测器Treblo:原理、部署与实战指南
  • Python验证码生成与验证实现指南
  • 从棋盘放棋子到错位排列:组合数学与高精度计算的算法实践
  • 北京网站建设服务怎么做才靠谱?揭秘那些让你少踩坑的硬核干货与真实案例
  • 电力市场购售电策略优化:误差补偿与储能调度模型
  • AI项目工程化实战:从半成品原型到可交付产品的六步重构法
  • 用了一年 AI,我发现很多人根本不会用 Agent