1. 题目

给定一个整数数组,找到所有不同的可能的升序子序列,一个升序子序列的长度至少应为2。

例1:
输入:
[4,6,7,7]
输出:
[[4,6],[4,6,7],[4,6,7,7],[4,7],[4,7,7],[6,7],[6,7,7],[7,7]]例2:
输入:
[65,21,-44,31,-8]
输出:
[[-44,-8],[-44,31],[21,31]]注意事项
- 给定数组的长度不会超过15。
- 给定数组的范围为[-100, 100]。
- 给定数组可能包含重复,两个相同的整数也被算作是升序子序列的特殊情况。

2. 解题

class Solution {set<vector<int>> s;vector<int> v;
public:vector<vector<int>> findSubsequences(vector<int> &nums) {dfs(nums,0);return vector<vector<int>>(s.begin(),s.end());}void dfs(vector<int>& nums, int idx){if(idx >= nums.size()){if(v.size() >= 2)s.insert(v);return;}for(int i = idx; i < nums.size(); ++i){dfs(nums,i+1);//不放某数,找下一个if(v.empty() || v.back() <= nums[i]){ //为空 或者  是升序,放入当前数v.push_back(nums[i]);dfs(nums,i+1);v.pop_back();}}}
};

100% 数据通过测试
总耗时 209 ms
您的提交打败了 7.89% 的提交!

LintCode 1210. 升序子序列(DFS)相关推荐

  1. 跳棋游戏(求最大升序子序列和)

    The game can be played by two or more than two players. It consists of a chessboard(棋盘)and some ches ...

  2. python升序数_Python求最大升序子序列与最小出现频率最高的数字,急急急!

    展开全部 >>> import sys >>> >>> def generateRandomList(size, start=0, stop=10 ...

  3. LintCode解题目录

    看见 LintCode 的代码能力测试CAT(Coding Ability Test)挺好,有倒计时,挺有面试紧迫感.做个记录. 另有本人 LeetCode解题目录.<程序员面试金典>解题 ...

  4. 2018深信服拼多多秋招笔试真题

    网易互娱 处理条件1: 处理5: 处理3,4的同时处理2: 对最后两个字符处理2. 对第3.4个条件的处理: judgeDengcha(int a,b,c){//对第3个条件的处理: if a,b,c ...

  5. 最长递增子序列 最长连续递增序列

    引言 这两道题有很大的相似性,在这里主要的地方就是循环的设置,不仅仅适用于这两道题,在很多类似的题目中都可以用到,要学会相应的方法才行: 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格 ...

  6. NIOP 1999 导弹问题 最长升降序子序列 DP[小思路]

    题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹 ...

  7. 动态规划(八):子序列系列

    一.最长递增子序列(非连续) 300. 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度.子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序 ...

  8. My Ninetieth Page - 最长递增子序列 - By Nicolas

    这篇page是针对leetcode上的300.最长递增子序列所写的.小尼先简单的说明一下这道题的意思,给定一个整数数组nums,我们需要找到其中最长严格递增子序列的长度.其中子序列是由数组派生而来的序 ...

  9. 动态规划——子序列问题——连续?不连续?

    动态规划--子序列问题--连续?不连续? 子序列问题是动态规划的一个常考题型,本篇文章主要介绍 子序列(连续)和子序列(不连续)两个问题.连续和不连续指的是子序列是否是连续的,还是说中间是可以有间隔的 ...

最新文章

  1. 再谈J.D.Ewards历史与现状,JDE人才缺失现状
  2. $.ajax的type属性,$.ajax中contentType属性为“application/json”和“application/x-www-form-urlencoded”的区别...
  3. linux给用户赋权限_linux/unix的用户与权限
  4. [MATLAB调试笔记]Update magnetic field in one step
  5. 地图上显示div点位
  6. 下载nodejs的mysql安装包下载安装_Node.js安装 下载
  7. 在VirtualBox中安装BlackArch Linux
  8. 您收到一封 2019 阿里云峰会 (北京) 邀请函
  9. python 获取脚本当前路径_Python获取脚本所在目录的正确方法
  10. Mysql 中创建数据库并插入数据
  11. 文件夹选择对话框 JS实现(转)
  12. 利用Vert.x构建简单的API 服务、分布式服务
  13. linux系统文件系统个目录介绍,关于linux的文件系统目录详细介绍
  14. C++ map()和pair()用法
  15. 个人h5第三方支付接口_个人免签支付接口系统搭建源码多种方式
  16. UIView延迟效果做出动画/UIView动画块
  17. VMware View 5.0 策略列表
  18. java调用百度api完成人脸识别
  19. jsplacement1.3中文汉化版
  20. C++ 野指针和悬空指针

热门文章

  1. 计算机系统遵循,自考《计算机系统结构》第10章精讲
  2. python变量和常量_python变量与常量内容:
  3. 裸机中代码书写的细节总结
  4. jeecms附件标签用法
  5. 一号团队-团队任务3:每日立会(2018-12-01)
  6. the params of sys aud mod req msgs from TV
  7. Newtonsoft.Json 获取匿名类数据
  8. 6. Nginx + PHP + FastGCI安装
  9. qq面板(仿版,未完待续中。。。。)---2017-04-24
  10. 学习微信公众号oauth2.0