请教一个算法题,我的方法因为速度慢不通过
这是题目:
https://www.hackerrank.com/challenges/almost-sorted-interval
Shik喜欢有序的区间。但目前他没有足够的时间对数字进行排序。于是他决定用几乎有序的区间。 一个几乎有序的区间是序列中满足如下性质的连
续子序列: 1. 第一个数是最小的。 2. 最后一个数是最大的。
请帮他计算排列中几乎连续区间的数目。
输入格式
第一行包含一个整数N。 第二行包含1到N的一个排列。
输出格式
输出几乎有序的区间个数。
约束条件
1 ≤ N ≤ 10
6
输入样例
5
3 1 2 5 4
输出样例
8
解释
子序列 [3], [1], [1 2], [1 2 5], [2], [2 5], [5], [4] 是几乎有序的区间。

我的思路是直接遍历看满不满足条件,但是每次不求最小值,直接将新加进来的数与子集的第一个数比较
我的代码
n = input()
a = map(int, raw_input().strip().split())
len_a = len(a)
rs = len_a
pre = 0
for i in xrange(len_a):
    for j in xrange(i+1, len_a):
        if a > a[j]: break
        if a[j] is max(a[i:j+1]): rs += 1
print rs

转载于:https://www.cnblogs.com/zy001/p/3980498.html

Almost sorted interval相关推荐

  1. 合并区间 · Merge Intervals 插入区间 · Insert Interval

    [抄题]: 给出若干闭合区间,合并所有重叠的部分. 给出的区间列表 => 合并后的区间列表: [ [[1, 3], [1, 6],[2, 6], => [8, 10],[8, 10], [ ...

  2. 合并区间(LintCode)

    合并区间 给出若干闭合区间,合并所有重叠的部分. 样例 给出的区间列表 => 合并后的区间列表: [ [[1, 3], [1, 6],[2, 6], => [8, 10],[8, 10], ...

  3. 九章算法 第七到九章 预习笔记

    ********************第七章 基于排列.图的DFS预习笔记******************** 本章节的先修知识有: 全排列问题如何使用深度优先搜索来实现?和全子集问题的异同在哪 ...

  4. lintcode-easy-Merge Intervals

    Given a collection of intervals, merge all overlapping intervals. Given intervals => merged inter ...

  5. 领扣LintCode问题答案-30. 插入区间

    领扣LintCode问题答案-30. 插入区间 目录 30. 插入区间 鸣谢 30. 插入区间 给出一个无重叠的按照区间起始端点排序的区间列表. 在列表中插入一个新的区间,你要确保列表中的区间仍然有序 ...

  6. LeetCode 23. Merge k Sorted Lists--Python解法--优先队列,分治法

    题目地址:Merge k Sorted Lists - LeetCode Merge k sorted linked lists and return it as one sorted list. A ...

  7. LeetCode57 Insert Interval

    题目: Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if nec ...

  8. leetcode--57--Insert Interval

    问题描述: Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if n ...

  9. 57-Insert Interval

    [题目] Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if ne ...

最新文章

  1. NVIDIA TensorRT高性能深度学习推理
  2. 大数据学习笔记1000条
  3. 16 个写代码的好习惯
  4. 十五、Python第十五课——测试代码
  5. Kotlin入门(14)继承的那些事儿
  6. c语言topk函数并获取下标,C语言函数语法大全(一)
  7. json 在后天怎么接_前台向后台传一个json数据,后台怎么接?
  8. 谢希仁计算机网络第七版 以太网单播和多播MAC地址范围[纠错]
  9. edius裁剪快捷键_EDIUS 快捷键大全 edius常用快捷键大全
  10. android speex 音频采样率,speex进行音频去噪
  11. 笔记本vmware利用无线网卡上网设置
  12. [python3]读取docx每个段落下的table数据
  13. java用etiplus如何打jar,README.md · Ranossy/majsoul_mod_plus - Gitee.com
  14. 从kernel源码进阶C语言
  15. web高级前端面试实战总结
  16. 转:查尔斯·汉迪:你是谁,比你做什么更重要
  17. 有条件的mysql插入语句_mysql中有条件的插入语句
  18. 在Java里面使用Pairs或者二元组
  19. 面试:计算机网络基础详解(一)
  20. EMC启航:我们为什么要做EMC

热门文章

  1. 我的世界服务器称号显示,服务器插件 称号 超级好用
  2. java插件化_Java插件化开发
  3. word图片自动换行不亮_Word自动换行版式不变形
  4. linux中if语句s,linux 中 if 语句条件的含义
  5. 内存地址 哪个程序_记一次排查线上程序内存的忽高忽低,又是大集合惹祸了...
  6. 用 js判断 一个数是否是素数(质数)_2020-09-20:如何判断一个数是质数?
  7. 使用游戏测试干式EEG传感器的有效性
  8. Augmented World Expo(AWE)重磅来袭!
  9. 虚拟现实技术的发展和分类
  10. 真刑啊!蔚来员工用公司服务器挖矿,已供认不讳