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

南通企业做网站重庆seo技术

南通企业做网站,重庆seo技术,温州手机网站制作公司电话,公司排名的网站思路:dp 这道题一开始想的时候并不会,但是看到了有些水果可以买也可以不买,所以就想到了选择与不选择的思路。 对于每一个水果,我们都有买和不买的选择,但是我们的第一个水果是一定要买的。然后再往后推导。 用dp[]…

思路:dp

这道题一开始想的时候并不会,但是看到了有些水果可以买也可以不买,所以就想到了选择与不选择的思路。

对于每一个水果,我们都有买和不买的选择,但是我们的第一个水果是一定要买的。然后再往后推导。

用dp[][2]来表示这个状态方程。dp[i][1]表示的就是选择买第i个水果,另外一个状态就是不买了。

但是大家也发现了,不买水果的话,我们还需要知道的一点就是前面是否有买过水果能让当前这个水果不用买呢?这是这道题的核心问题。既然不买,那么肯定就必须是前面买过的水果里有覆盖这个水果的。

这怎么办呢?我们想,既然我们已经到了第i个水果了,证明说前面的水果我们都已经挑选完毕了,我们可以枚举前面j个水果(j<i)的购买情况,而是否覆盖当前的水果,我们就用j+j>=i来表示。为什么呢?第一个j代表我们已经买到当前的水果j了,然后这个水果又可以往后覆盖j个水果让他免费。并且这个>=i是包含我们当前水果的判断。

dp[i][0]=min(dp[i][0],dp[j][1])这就是不选择买当前水果的方程。

好了,我解决最棘手的问题之后,剩下的就好解决了,选择买这个水果那么方程就是:

dp[i][1]=min(dp[i-1][0],dp[i-1][1])+prices[i-1](这里i是从2开始的)

上代码:

class Solution {
public:int minimumCoins(vector<int>& prices) {int n=prices.size();int dp[1005][2];for(int i=0;i<=n;i++){dp[i][0]=dp[i][1]=INT_MAX;}dp[1][1]=prices[0];for(int i=2;i<=n;i++){dp[i][1]=min(dp[i-1][1],dp[i-1][0])+prices[i-1];for(int j=i-1;j+j>=i;j--){dp[i][0]=min(dp[i][0],dp[j][1]);}}return min(dp[n][0],dp[n][1]);}
};

http://www.hkea.cn/news/860105/

相关文章:

  • 哪里有网站建设电话查排名官网
  • 做网站需要准备的工具网络营销方案模板
  • 科技未来网站建设百度推广开户公司
  • 十度网站建设保定网站推广公司
  • php可以做视频网站有哪些软文推广渠道主要有
  • 成都网站建设桔子科技淘宝付费推广有几种方式
  • 福田的网站建设公司网络营销成功案例ppt免费
  • 网站建设英文专业术语百度推广网址
  • 做网站之前需要准备什么企业网络营销策划案
  • dreamweaver动态网站开发与设计教程内容怎么在百度上面打广告
  • 济南网站搜索优化深圳网络推广招聘
  • 网站 色彩武汉it培训机构排名前十
  • 怎么做资源网站网络培训中心
  • 服装品牌网站建设营销网站建设选择原则
  • 乌鲁木齐新市网站建设有哪些网络营销公司
  • 网站的后台怎么做企业网络规划设计方案
  • 做网站文字字号大小企业网站设计要求
  • ae有么有做gif的网站品牌推广方案范文
  • apicloud官网下载seo关键词优化排名公司
  • 上海网站制作福州百度关键字优化精灵
  • 做uml图网站百度账号快速注册入口
  • 广西梧州南京 seo 价格
  • 网站警察备案seo关键词优化平台
  • 网站开发设计实训 报告惠州网站建设
  • 网站开发的原理山西免费网站关键词优化排名
  • 石家庄网站建设全包免费推广网站2024
  • 阿里云网站备案时间无锡seo网站管理
  • 景点介绍网站模板重庆百度关键词推广
  • 做亚马逊网站费用吗曲靖新闻今日头条
  • bing 网站管理员2023今日新闻头条