Someone can help me to solve this problem, I try Quad-tree but i got TLE. Update Sub-Matrix & Query Sub-Matrix
# | User | Rating |
---|---|---|
1 | ecnerwala | 3649 |
2 | Benq | 3581 |
3 | orzdevinwang | 3570 |
4 | Geothermal | 3569 |
4 | cnnfls_csy | 3569 |
6 | tourist | 3565 |
7 | maroonrk | 3531 |
8 | Radewoosh | 3521 |
9 | Um_nik | 3482 |
10 | jiangly | 3468 |
# | User | Contrib. |
---|---|---|
1 | maomao90 | 174 |
2 | awoo | 164 |
3 | adamant | 162 |
4 | TheScrasse | 159 |
5 | nor | 158 |
6 | maroonrk | 156 |
7 | -is-this-fft- | 151 |
8 | SecondThread | 147 |
9 | orz | 146 |
10 | pajenegod | 145 |
Someone can help me to solve this problem, I try Quad-tree but i got TLE. Update Sub-Matrix & Query Sub-Matrix
Name |
---|
Two dimensional lazy-loading tree (segment tree with lazy propagation) can be used.
Firstly you should try to solve simpler task, with two-dimensional segment tree: - Update one element of matrix - Query sum of sub-matrix
Then you can change segment tree to lazy-loading tree.
how to make lazy tags when dealing with two dimensional seg-tree,I used to think that it is impossible....
Yeah, you' re right — it won't work.
It's a straightforward Fenwick-tree problem in two dimensions. If you don't have any idea on how to solve this, it would be better to begin with a one-dimensional version like PYRSUM
Sketch of the idea behind both questions: Topcoder thread, Petr's blog
You are wrong. Both queries asks about sub-matrix.
Using quad tree you can reach O(N * K) ~ 10^8 with a big constant factor, i think it is not very easy to pass 1 sec TL using quad-tree.
At least one Fenwick-tree based approach works; as proof you can see that I solved the problem using this sort of technique already: http://www.spoj.com/status/USUBQSUB,hex539/
Actually your comment seems a bit out-of-place- was it supposed to be directed at me?
can you please explain me, or give me a code with 2d fenwick-tree, or 2d lazy propagation? I think it should be O(n) for query.
Here's one implementation. (It's XOR-sum, but the idea is the same and the implementation of ordinary sum is easier.) http://codeforces.com/contest/341/submission/4391440
And a simple linear version, without context: http://pastebin.com/CuuRyRZw
This is a new technique for me, i think is really interesting and useful. I used it in Pyramid Sum 2(SPOJ), yesterday.
hex539 wrote a very good article in topcoder. Range BIT updates