【发布时间】:2016-03-08 19:53:48
【问题描述】:
问题陈述是这样的:给定一个 N 提示:使用分段树或 fenwick 树。
我真的不知道应该如何使用求和树来解决这个问题。
示例输入:
Input 1:
5 (amount of elements in the list)
3 1 4 2 0
output 1: 1
input 2:
6
4 5 2 0 1 3
output 2: 4
【问题讨论】:
-
除了提示没有帮助之外,您对这个问题有什么想法?
-
应该很容易理解满足要求的列表应该是什么样子(提示:双音)。剩下的部分是找到最接近的这样的序列。
-
我想不出比 O(N^2) 中的蛮力解决方案更多的方法,我基本上检查所有可能性并选择交换次数最少的一个......但这不会t 适用于 N > 10 000。
-
我可以在 O(n^2) 中通过依次关注每个最低元素来做到这一点。剩下的技巧是更快地完成相同的任务(或者对二次方没问题)。
-
@JanDvorak Fenwick 树是为了让尚未移动的元素的位置保持最新。
标签: algorithm