作者:翟天保Steven
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

题目描述:

Redraiment是走梅花桩的高手。Redraiment可以选择任意一个起点,从前到后,但只能从低处往高处的桩子走。他希望走的步数最多,你能替Redraiment研究他最多走的步数吗?

本题含有多组样例输入

输入描述:

输入多组数据,1组有2行,第1行先输入数组的个数,第2行再输入梅花桩的高度

输出描述:

一组输出一个结果

示例:

输入:

6
2 5 1 5 4 5
3
3 2 1

输出:

3
1

说明:

6个点的高度各为 2 5 1 5 4 5
如从第1格开始走,最多为3步, 2 4 5
从第2格开始走,最多只有1步,5
而从第3格开始走最多有3步,1 4 5
从第5格开始走最多有2步,4 5
所以这个结果是3。   

解题思路:

这道题是个标准的最长升序子序列问题,用动态规划求解。v存放梅花桩高度信息,result用来作动态规划表,每个位置对应的result值就是截止到当前遍历时间点时的最大行进步数;从前向后遍历梅花桩,每到某个位置,再遍历该位置前的梅花桩,若前面的位置低于当前位置,则刷新当前位置的result值,刷新结果为当前位置result值和前面位置result值+1这两者间的最大值;这样每个位置的result值动态刷新,直到遍历全部完成后,result值最大的数值就是结果。

测试代码:

#include <iostream>
#include <algorithm>
#include <vector>using namespace std;int main()
{int num;while(cin>>num){vector<int> v;for(int i=0;i<num;++i){int temp;cin>>temp;v.push_back(temp);}vector<int> result(num,1);for(int i=0;i<num;++i){for(int j=0;j<i;++j){if(v[j]<v[i]){result[i]=max(result[i],result[j]+1);}}}int max = *max_element(result.begin(), result.end());cout<<max<<endl;}return 0;
}

华为机试HJ103:Redraiment的走法相关推荐

  1. Java算法:华为机试算法(下),华为算法Java版,牛客网华为算法73~108题

    接上篇:Java算法:华为机试算法(中),华为算法Java版,牛客网华为算法55~72题   HJ73 计算日期到天数转换 计算日期到天数转换 题目描述 根据输入的日期,计算是这一年的第几天.. 测试 ...

  2. 牛客在线编程-华为机试-中等

    牛客在线编程题目-华为机试-中等 题号 题目 知识点 难度 通过率 HJ16 购物单 动态规划 中等 21.21% HJ17 坐标移动 字符串 中等 24.79% HJ20 密码验证合格程序 数组 字 ...

  3. (牛客网)华为机试(二)

    (牛客网)华为机试题集解答 在解题前先分享一波oj刷题的固定格式代码,方便输入时使用 import java.util.*; import java.io.*; public class Main{ ...

  4. 华为机试108题(C 语言解答)

    Nowcoder题库链接:华为机试 HJ1 字符串最后一个单词的长度(字符串) 输入:hello nowcoder输出:8说明: 最后一个单词为nowcoder,长度为8 示例代码: HJ1.c #i ...

  5. 【华为机试 Python实现】华为机试题集合(已更新171篇)

    文章目录 新手指引 数据结构基础 华为机试真题系列 牛客网华为机试系列 Python 八股文系列 <华为机试真题详解>专栏定价99.9 包含 <华为机试真题>的所有题目. 包含 ...

  6. 【强烈推荐收藏】坚持3个月爆肝华为机试108题C++全解(适合新手入门,就业必刷套题)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 前言 金九银十,金三银四.当前正处于校招.社招的火热期,之前就想为正在筹备就业的同学们准备刷题宝 ...

  7. [华为机试真题][2014]62.去除重复字符并排序

    题目 描述: 去除重复字符并排序 运行时间限制: 无限制 内容限制: 无限制 输入: 字符串 输出: 去除重复字符并排序的字符串 样例输入: aabcdefff 样例输出: abcdef 代码 /*- ...

  8. 牛客网--华为机试在线训练10:字符个数统计

    牛客网–华为机试在线训练10:字符个数统计 题目描述 编写一个函数,计算字符串中含有的不同字符的个数.字符在ACSII码范围内(0~127).不在范围内的不作统计. 输入描述: 输入N个字符,字符在A ...

  9. 牛客网–华为机试在线训练9:提取不重复的数

    牛客网–华为机试在线训练9:提取不重复的数 题目描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数. 输入描述: 输入一个int型整数 输出描述: 按照从右向左的阅读顺 ...

最新文章

  1. vc++学习篇(三)——预处理命令之条件编译(#ifdef,#else,#endif,#if等)
  2. 排序算法学习——冒泡排序
  3. python 参数类型的多态_【Python】面向对象:类与对象\封装\继承\多态
  4. Linux shell脚本中单双引号的区别
  5. MySQL数据库视图(view),视图定义、创建视图、修改视图
  6. 再谈全局网HBase八大应用场景
  7. android如何不自动获取焦点,Android 如何让EditText不自动获取焦点
  8. 接口测试--apipost解决传递json参数时字符串包含有@和/的问题
  9. 洛谷——P1425 小鱼的游泳时间
  10. 我开发的kvm虚拟化虚拟机批量生产脚本
  11. 【codevs2485】七夕祭(贪心,环形纸牌均分)
  12. Garden Planner中使用3D视图的技巧
  13. stm32如何执行软复位_stm32f7软件复位 stm32f0 软件复位
  14. python miio 连接小米网关_能接入小米米家的智能筒灯,69元一个,你见过吗?
  15. 用电信息采集系统常见故障
  16. html怎样在视频上添加文字,视频底部加一行文字 如何在视频上加文字
  17. JavaScript逻辑运算与或非
  18. 如何合并两个excel表格数据
  19. mysql将公历农历转换_SQL 日期转换(阳历转阴历)
  20. PPT精灵:批量插入图片生成幻灯片

热门文章

  1. logstash增量读取mysql中的数据到es中
  2. 想搞一套AI问答游戏系统?简单,Google又开源了
  3. django学习笔记:AdminSite界面配置
  4. shell截取字符串的8种方法
  5. ORACLE客户端连接
  6. SSH家政服务系统设计与实现答辩PPT免费下载
  7. python批处理代码_Python文件夹批处理操作代码实例
  8. coco 数据集_Tensorflow对COCO目标检测数据预处理
  9. antvue 有赞布局_UI大全:前端UI框架集合(持续更新,当前32个)
  10. android 重绘如何能不闪一下屏幕_回流和重绘