Can someone please help me out to understand the solution of 340 C -- TOURIST PROBLEM solution given below:
THANKS IN ADVANCE :)
# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | awoo | 154 |
8 | Dominater069 | 154 |
10 | luogu_official | 150 |
Name |
---|
Hey!
To solve this problem you can read the EDITORIAL HERE, you can also see the writer's solution HERE.
Now after you're done understanding the solution, let's answer your question, as in the writer's solution, you can find that the numerator (sumtot) is the next: (please notice that the indices in the writer's solution start from 1, while in the next few lines I will start them from 0 as in the solution you are asking about)
sumtot = sum1 + 2 * sum2
->
sum1 = x[0] + x[1] + ... + x[n-1]
->
sum2 = (x[0]*0-0)+(x[1]*1-x[0])+(x[2]*2-x[1]-x[0]) +...+ (x[n-1]*(n-1)-x[n-2]-x[n-3]-...-x[0])
Now you can find the next for every
x[i] ; {0 <= i <= n-1}
:**sumtot[i]** = x[i] + 2 * { i - ( n - 1 - i ) } * x[i]
->
sumtot[i] = x[i] + 2 ( 2 * i + 1 - n ) * x[i]
->
sumtot[i] = x[i] * ( 3 + 4 * i - 2 * n )
And finally,
sumtot = SUM of all sumtot[i]
hope every thing is clear now :)