Блог пользователя vsanjay_nitdgp

Автор vsanjay_nitdgp, история, 8 лет назад, По-английски

Hello,

could anyone provide good source for understand and solving GSS1 of spoj.

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

»
8 лет назад, # |
Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

You better knew how to use Interval Tree before to solve this. At each node K of the IT we will need 4 values: 1. sum: sum of all elements in the interval managed by node K 2. left: the maximum continuous sum starts from the left (prefix sum) of the interval managed by node K 3. right: the maximum continuous sum starts from the right (suffix sum) of the interval managed by node K 4. res: maximum sum of the interval managed by node K (that's it, the answer we need)

When we combine two intervals: - New.sum = L.sum + R.sum - New.left = max(L.left , L.sum + R.left) - New.right = max(R.right , L.right + R.sum) - New.res = max(L.res , R.res , L.right + R.left)

Hope it will help you.

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

In this page you can find awesome solution and explanation for SPOJ's GSS1 and here discussion for it and also many other problems solved using segment tree and it's variations.