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

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

I have an array A of N elements (1 <= N <= 200000). Now I have Q (1 <= Q <= 200000) queries. In each query, 3 integers x, l and r are given. I have to find min{x*j + A[j]} where l <= j <= r. I was thinking about solving this by segment tree or dynamic programming but still I can't handle proper time complexity. Example: Input Array A = [12, 13, 33, 25, 10, 41, 51, 2]. Query: 2 1 5 Output: 14 Query: 5 5 8 Output: 35. Can anybody tell me the right approach?

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

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

minimum convex hull trick in every vertex of segment tree

O(NlogN2).