xsxshxs2 2015-07-07 11:30 采纳率: 100%
浏览 2512
已采纳

一道题目,请大家帮帮忙,谢谢了

【问题描述】
  小山田心子是一只快乐的小白兔,某天她看到一座彩虹桥,彩虹桥长度为N,每个单位都有一个美观度,小山田心子一开始在单位1,并取走单位1的美观值,接下来她会在从下一格开始到N中选择一个最大美观度的单位跳过去(如果美观值相同取前面的),然后取走美观值,直到她走到N,请输出她取走的美观度之和。
【输入格式】
  第一行一个整数N(10<N<1000),接下来一行N个整数表示彩虹桥每个单位的美观度。
【输出格式】
  小山田心子取过的美观值之和。

【输入样例1】
  5
  5 4 3 2 1
【输出样例1】
  15

【输入样例2】
  10
  5 9 4 6 10 8 7 5 4 7
【输出样例2】
  37

【样例解释】
  样例1:(兔子一开始在单位1(取走美观度5),然后在2到5找最大,找到单位2的美观度4…一直找到单位N,美观度是15);
  样例2:(兔子先取单位1,在2到10中找最大找到单位5的美观度10,然后在6到10找最大找到单位6的美观度8,然后在7到10找最大找到单位7的美观度7,接下来在单位8到10找到单位10的美观度7,答案即为5+10+8+7+7=37)。

【数据范围】
  N=200000(注意这里)
其中一个 n=200000 的数据点 http://pan.baidu.com/s/1o6qrs2A
感谢大神

  • 写回答

6条回答

  • wowo_zZ 2015-07-07 12:16
    关注

    虽然是从前往后跳,但是感觉求值应该从后来算。你看哈,从最后一位开始,肯定是可以取到的,然后将这位作为flag,向前搜索。如果比flag小,则略过,如果大于flag,则计入总和,并更新flag。如此往前搜索,直到第一位,当然第一位也计入总和。这样复杂度也就是O(1)。题主琢磨下是否可行?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?