动态规划之糖果分配

原创 2017年11月28日 15:28:04

candy糖果分配
有N个孩子站成一行,每个孩子有不同的评估值。
分配糖果给这些孩子,受到如下条件的限制:
1. 每个孩子必须至少有一颗糖果
2. 有更高评估值的孩子比他的邻居有更多的糖果
问:必须分配的最少糖果是多少。

找最大最小值,这种问题叫做寻优问题,也叫做规划问题。

分析:
1. dp[i]:表示0-i的最少糖果,val[i]:表示i的评估值,c[i]:表示i的糖果
2.

dp[i+1]=dp[i]+1,dp[i]+val[i]+1,val[i+1] <= valval[i+1] >val

3. 2步骤可能出现dp[i]==dp[i+1]==1,需要从右往左进行运算
使得,c[i-1] = c[i-1]+1,if val[i-1] > val[i]

操作过程:
1. 从左向右扫描后能保证比左边邻居大1
2. 从右向左扫描后能保证比右边邻居大1

    int candy(vector<int> &ratings) {
        int n = ratings.size();
        vector<int> v(n,1);
        for( int i = 1;i < n;i++)
            if(ratings[i]>ratings[i-1]) v[i] = v[i-1]+1;
        int sum = 0;
        for( int i = n-1;i > 0;i--){
            if(ratings[i-1]>ratings[i]&&v[i-1]<=v[i]) v[i-1] = v[i] + 1;
            sum += v[i];
        }
        sum += v[0];
        return sum;
        }
版权声明:本文为博主原创文章,未经博主允许不得转载。

动态规划 拿糖果

问题描述   妈妈给小B买了N块糖!但是她不允许小B直接吃掉。   假设当前有M块糖,小B每次可以拿P块糖,其中P是M的一个不大于根号下M的质因数。这时,妈妈就会在小B拿了P块糖以后再从糖堆里拿走P...
  • wangdd_199326
  • wangdd_199326
  • 2017年03月15日 19:45
  • 296

OpenJudge - 2989 糖果 动态规划(DP) 重庆一中高2018级竞赛班第十一次测试 2016.9.24 Problem 2

【问题描述】 由于在维护世界和平的事务中做出巨大贡献,Dzx被赠予糖果公司2010年5月23日当天无限量糖果免费优惠券。在这一天,Dzx可以从糖果公司的N件产品中任意选择若干件带回家享用。糖果公司的...
  • q1093383371
  • q1093383371
  • 2016年09月27日 18:51
  • 411

蓝桥杯--算法提高:拿糖果(动态规划)

问题描述   妈妈给小B买了N块糖!但是她不允许小B直接吃掉。   假设当前有M块糖,小B每次可以拿P块糖,其中P是M的一个不大于根号下M的质因数。这时,妈妈就会在小B拿了P块糖以后再从糖堆里拿走P...
  • yf224
  • yf224
  • 2017年05月18日 15:36
  • 180

蓝桥杯练习:算法提高 拿糖果

问题描述   妈妈给小B买了N块糖!但是她不允许小B直接吃掉。   假设当前有M块糖,小B每次可以拿P块糖,其中P是M的一个不大于根号下M的质因数。这时,妈妈就会在小B拿了P块糖以后再从糖堆里...
  • qq_25821067
  • qq_25821067
  • 2017年03月13日 09:39
  • 305

蓝桥杯 ADV-143算法提高 扶老奶奶过街

一共有5个红领巾,编号分别为A、B、C、D、E,老奶奶被他们其中一个扶过了马路。 五个红领巾各自说话: A :我和E都没有扶老奶奶 B :老奶奶是被C和E其中一个扶过大街的 C :老奶奶是被我...
  • liuchuo
  • liuchuo
  • 2016年07月21日 23:29
  • 279

动态规划——利润分配问题

典例①:利润问题,资源分配 或是项目投资,使收益最大 具体题目:http://blog.csdn.net/sophie_wise8/article/details/6142488 有资...
  • sunshine_pb
  • sunshine_pb
  • 2014年12月04日 20:43
  • 825

动态规划--机器分配

一、问题描述 机器分配 题目描述 总公司拥有高效设备M台,准备分给下属的N个分公司。各分公司若获得这些设备,可以为国家提供一定的盈利。问:如何分配这M台设备才能使国家得到的盈利最大?求出最大盈利...
  • u014542643
  • u014542643
  • 2017年10月29日 20:36
  • 74

【笔试题】拼多多1小熊吃糖果

描述有n只小熊,他们有着不同的战斗力。每次他们吃糖时,会按照战斗力来排。战斗力高的小熊拥有优先选择权。前边的小熊吃饱了,后边的小熊才能吃。每只小熊有一个饥饿值,每次进食时,小熊会选择最大的能填饱自己当...
  • answer100answer
  • answer100answer
  • 2017年09月02日 19:20
  • 493

状态压缩动态规划入门

状态压缩 动态规划
  • tengfei461807914
  • tengfei461807914
  • 2016年02月29日 10:39
  • 675

poj 1973 分配任务 进阶动态规划 <难题>

题意: 软件公司有两个项目,每个项目有m个子项目,有n个程序猿,每个程序猿完成项目A或者 项目B的某一个子项目时间为x, y 每个人同一时刻只能做一个项目 项目完成时间是最晚完成的A或者B的时...
  • cfzjxz
  • cfzjxz
  • 2013年04月02日 17:46
  • 1597
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:动态规划之糖果分配
举报原因:
原因补充:

(最多只允许输入30个字)