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

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

Problem-D this is D problem of Atcoder beginner contest 163 from last night. I'm still unable to get the logic, can anyone explain the solution?

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

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

Since you can take every number of elements from k to n, you can look at them seperately since $$$10^{100}$$$ is so big that the sum with less elements will always be less than the sum with more elements. Then for each number of elements (lets call it j) the minimum sum will be $$$\sum_{i=0}^{j-1} (100^{100}+i) = j \cdot 100^{100} + \sum_{i=0}^{j-1} i$$$ (the smallest j numbers added together). And the maxmimum number will be the biggest j numbers added together which is $$$j \cdot 100^{100} + \sum_{i=n-j+1}^{n} i $$$. It is obvious that you can create all numbers in between the maximum and the minimum. Repeat that for every j from k to n and add the results together.