动态规划

如果有人认为吃东西只需要嘴巴,那就错了。
都知道舌头有这么一个特性,“由简入奢易,由奢如简难”(据好事者考究,此规律也适合许多其他情况)。具体而言,如果是甜食,当你吃的食物不如前面刚吃过的东西甜,就很不爽了。
大宝是一个聪明的美食家,当然深谙此道。一次他来到某小吃一条街,准备从街的一头吃到另一头。为了吃得爽,他大费周章,得到了各种食物的“美味度”。他拒绝不爽的经历,不走回头路而且还要爽歪歪(爽的次数尽量多)。

输入
两行数据。
第一行为一个整数n,表示小吃街上小吃的数量
第二行为n个整数,分别表示n种食物的“美味度”
数据规模和约定
美味度为0到100的整数
n< 1000

输出
一个整数,表示吃得爽的次数

样例输入
10
3 18 7 14 10 12 23 41 16 24

样例输出
6

解析`
后一次吃的食物比前一次美味度高,则为爽。
拒绝不爽的经历,不走回头路,爽的次数尽量多:
按顺序吃小吃街上的食物,且后一次吃的食物比前一次美味度高,求爽的次数最多有多少
即第二行输入的数中按顺序取部分数,使得这组数是由小到大排列的,求这组数最多有多少
即求输入的第二行数的最大不下降子序列长度
如样例中,数组3 18 7 14 10 12 23 41 16 24的最大不下降子序列为{3 7 10 12 23 41}或{3 7 10 12 16 24},均为6个数,样例输出为6

代码

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{  int n;  cin >> n;  int *a = new int [n];  int *b = new int [n]; //开辟两个动态数组,a[i]表示食物美味度,b[i]表示前i+1个数中的最大不下降子序列长度for(int i = 0; i < n; i++)  {cin >> a[i];//输入n种食物的美味度  b[i]=1;//初始为1}for(int i = 0; i < n; i++) {  for(int j = 0; j < i; j++) {  if(a[i] >=a[j])  //如果a[i]>=a[j],最大不下降子序列的长度就会+1b[i] = max(b[i], b[j]+1);  //取较大的值}  }  cout<<b[n-1]<<endl;//输出最大值return 0;
}

蓝桥杯 题1557 聪明的美食家 C++相关推荐

  1. 蓝桥杯 算法提高 聪明的美食家

    算法提高 聪明的美食家 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述 如果有人认为吃东西只需要嘴巴,那就错了. 都知道舌头有这么一个特性,"由简入奢易,由奢如简难&quo ...

  2. java dfs算法蓝桥杯题_【蓝桥杯省赛JavaB组真题详解】四平方和(2016)_疼疼蛇的博客-CSDN博客...

    原文作者:疼疼蛇 原文标题:[蓝桥杯省赛JavaB组真题详解]四平方和(2016) 发布时间:2021-02-26 15:00:01 题目描述 四平方和 四平方和定理,又称为拉格朗日定理: 每个正整数 ...

  3. STL bitset用法小结(详细)附蓝桥杯题:明码

    bitset用法小结 使用bitset类型需引入头文件 #include< bitset > 它是一种类似数组的结构,它的每一个元素只能是0或1,每个元素仅用1bit空间. bitset类 ...

  4. 题目 1557:聪明的美食家(动态规划)

    题目描述 如果有人认为吃东西只需要嘴巴,那就错了. 都知道舌头有这么一个特性,"由简入奢易,由奢如简难"(据好事者考究,此规律也适合许多其他情况).具体而言,如果是甜食,当你吃的食 ...

  5. 蓝桥杯题库 算法提高非vip部分(C++、Java)代码实现(251-280)

    文章目录 ADV-251 Petri Net Simulation cpp: java: ADV-252 Navigation cpp: ADV-256 The Sky is the Limit cp ...

  6. 2013年蓝桥杯题集C本科B

    1.题目标题: 高斯日记 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是 ...

  7. 蓝桥杯题_ALGO11_瓷砖铺放

    问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...

  8. 蓝桥杯题库 BASIC-3 字母图形

    #include <iostream> #include <cmath> using namespace std; int main() {int n, m;cin >& ...

  9. 蓝桥杯 题库 基础练习 字母图形

    问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律,并输出一个 ...

最新文章

  1. 42所双一流大学校长情况简介(2019年)
  2. mysql 网络io_MySQL的各种网络IO超时的用法和实现
  3. 提高PHP编程效率的20个要点(转)
  4. 用python编写图片生成器_python生成器
  5. android之实现各个组件点击事件处理
  6. uc3842开关电源电路图_UC3842 的原理及应用详解 (上)
  7. 数据中台建设五步法(文末赠书)
  8. 定时器 setTimeout setInterval
  9. Linux命令解释之setfacl,getfacl,chattr
  10. iOS仿京东分类菜单之UICollectionView内容
  11. 我要看的学习网站——php
  12. JavaScript基础知识
  13. 如何系统地学习linux?
  14. 台式电脑上没有显示计算机怎么办,电脑显示器无视频输入怎么办
  15. S@Kura的PHP进阶之路(三)
  16. 数据治理:数据治理之道-数据文化-数据思维融入企业文化
  17. 数据结构—排序(第九章)
  18. 计算机组策略主要功能,组策略概述
  19. nginx(项目部署)linux版
  20. [软件安全].任伟.扫描版

热门文章

  1. 大一考初级会计早不早啊?
  2. DB2 SQL错误查询 LOAD时报的日志特别好用
  3. nginx配置防止域名恶意解析
  4. Jetson Xavier NX刷机安装Ubuntu20.04,配置CUDA,cuDNN,Pytorch等环境教程(英伟达官方源安装,理论适用其它Jetson设备)
  5. 关于Petri网的学习笔记
  6. 数据库-SQL常用函数语句及其用法汇总
  7. 【面试经历】苏州软世通面试经历及面试题目解答
  8. MySQL常用函数大全详解
  9. java实例化对象例子
  10. 42岁腾讯老员工失业,却处处碰壁