解法
DFS,每遍历到一个都是可行新子串,满足长度不小于2的就可以输出,然后再往后发展
用set来去重
class Solution(object):
def findSubsequences(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""
n = len(nums)
ans = set()
def solve(seq, index):
if len(seq)>=2:
ans.add(tuple(seq))
for i in xrange(index+1,n):
if len(seq)==0 or nums[i]>=seq[-1]:
solve(seq+[nums[i]],i)
solve([],-1)
return list(map(lambda x:list(x), ans))