Walk - Editorial

cakewalk
editorial
march14
programming

#1

PROBLEM LINK:

Practice
Contest

Author: Dmytro Berezin
Tester: Mahbubul Hasan
Editorialist: Jingbo Shang

DIFFICULTY:

Cakewalk

PREREQUISITES:

Programming

PROBLEM:

Given a sequence of numbers W[0…N-1], find out a number S, such that S - i >= W* holds for all 0 <= i < N.

EXPLANATION:

It is easy to find out the choice of decreasing speed is to decrease it by 1 after each segment. So we can have the above problem.

After some transformations, the requirement is that S >= W* + i holds for all 0 <= i < N. Therefore, simply let S be the maximum of W*+i is the best choice.

AUTHOR’S AND TESTER’S SOLUTIONS:

Author’s solution can be found here.
Tester’s solution can be found here.


#2

@gursheel07 Initially I too thought it should be max(W*)+i but that is not correct, take an example W[] = 4, 2, 1, 2 according to your approach answer should be 4, but then when chef reaches the last segment speed will be 1, which is less than 2, therefore it is not correct. The required speed for last segment is 2, hence answer would be 5. So you have to consider max(W*+i)


#3

Weak test cases mate


#4

Shouldn’t it be max(W*)+i instead of max(W*+i)?
My answer is wrong but I couldn’t understand why it should be max(W*+i).