https://www.codechef.com/viewsolution/14263219
i dont understand why do i get wa in second case ?
https://www.codechef.com/viewsolution/14263219
i dont understand why do i get wa in second case ?
try this test case :
1
5
-1 2 0 1 3
your code is giving answer : 23
but actual answer is 25
what you’re doing is that you are considering all the positive numbers together and negative numbers separately .
Actually if you closely look at the test case that I’ve provided,you will see that there are 2 possibilities.
possibility 1 :
take all positive numbers at together and negative numbers separately
so,
positive sum = 1+0+2+3 = 6
happy_pos = 6 * 4 = 24
negative sum = -1
happy_neg = -1 * 1 = -1
total_happy = 24 + (-1) = 23 (which is the answer according your code)
possibility 2 :
take all positive numbers together and then add negative number one at a time into the positive sum.
why we are doing this ?
because there might be a possibility that by adding a negative number into the positive sum that we considered our total happiness might increase.
so,
positive sum = 1+0+2+3 = 6
add negative number to this = 6 + (-1) = 5
total_happy = 5 * 5 = 25
which is the correct answer.
if negative number would have been -3 rather than -1 then,
positive_sum = 6
happy_pos = 6 * 4 = 24
new_pos_sum = 6 + (-3) = 3
new_happy_pos = 3 * 5 = 15
since here our overall happiness is decreasing thus in this case we consider the negative number separately thus,
happy_pos = 24
happy_neg = -3 * 1 = -3
total_happy = 24 + (-3) = 21
hope this helps you.
thanks for the answer it actually helped me sorry for late reply
You shouldnt use award points feature dear. It subtracts your karma . Upvoting so you can continue to ask questions.
thanks for upvote man i didnt know karma is subtracted
thanks for upvote man i didnt know karma is subtracted