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

Автор I_Love_AnhThu, история, 4 часа назад, По-английски

Given a constant $$$s$$$, an array of $$$n$$$ non-negative integers and you have to process $$$q$$$ queries of following types :

  1. $$$l \ r \ b$$$ : for each $$$i$$$ in range $$$[l, r]$$$, if $$$a[i] < b$$$ let $$$a[i] = s - a[i]$$$
  2. $$$l \ r \ b$$$ : for each $$$i$$$ in range $$$[l, r]$$$, if $$$a[i] > b$$$ let $$$a[i] = s - a[i]$$$
  3. $$$i$$$ : return the current value of $$$a[i]$$$

$$$1 \leq n, q \leq 5.10^5$$$ $$$1 \leq s, b \leq 10^7$$$

Time limit : 2.5s Memory limit : 512 mb

I'm trying to solve the easier problem when all the updates appear before the queries, but I still can't; I don't have any approach for this problem yet, can anyone give me some hints or something ? Sorry for bad English :( Thanks :)

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

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

Auto comment: topic has been updated by I_Love_AnhThu (previous revision, new revision, compare).

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

Auto comment: topic has been updated by I_Love_AnhThu (previous revision, new revision, compare).

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

Problem source?

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

do u have any idea about Segment Tree and Lazy Propagation??

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

Segment tree with lazy propagation?

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

Reach specialist first bruh