Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

最后根节点时怎么求最大值

Posted by first at 2006-02-10 23:36:30 on Problem 2750
In Reply To:Re:还是晕,小弟我线段树学得太差,大牛们能不能帮小弟一把。就是在每一次改变时,如何更新线段树,在求解。也可能我是真的就不理解线段树的精髓。万分感谢。不!那时相当的感谢!!!! Posted by:zcgzcgzcg at 2006-02-08 12:27:23
按照这样操作,比如3 -4 1 2 -1
分成了3 -4 1 和 2 -1 两个线段
3 -4 1的左边开始连续的最大和是3,从最右边开始连续的最大和1
无限制的连续的最大和3,
2 -1的左边开始连续的最大和是2,从最右边开始连续的最大和1
无限制的连续的最大和2,怎么得出最后的答案5呢?
根节点对应序列3 -4 1 2 -1
根节点的左边开始连续的最大和容易求出 lmax = 3
根节点的左右边开始连续的最大和容易求出 rmax = 2
如果是lmax + rmax得出5的话,对于这种情况是对的,可是其它情况是错误的。
因为可能计算重复




 


> 这样:对于最大值,记录一段中从最左边开始连续的最大和,从最右边开始连续的最大和以及无限制的连续的最大和,更新比较简单,推一下即可

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator