<s> """<STR_LIT>""" <EOL> __author__ = '<STR_LIT>' <EOL> class Solution : <EOL> def jump_TLE ( self , A ) : <EOL> """<STR_LIT>""" <EOL> if not A : <EOL> return <NUM_LIT:0> <EOL> length = len ( A ) <EOL> counter = <NUM_LIT:0> <EOL> dp = [ [ ] for _ in A ] <EOL> q = [ ] <EOL> q . append ( <NUM_LIT:0> ) <EOL> while q : <EOL> current_level = q <EOL> q = [ ] <EOL> for ind in current_level : <EOL> if ind >= length - <NUM_LIT:1> : <EOL> return counter <EOL> for j in xrange ( ind + <NUM_LIT:1> , ind + A [ ind ] + <NUM_LIT:1> ) : <EOL> if j not in current_level : <EOL> q . append ( j ) <EOL> counter += <NUM_LIT:1> <EOL> return counter <EOL> def jump ( self , A ) : <EOL> """<STR_LIT>""" <EOL> length = len ( A ) <EOL> counter = <NUM_LIT:0> <EOL> start = <NUM_LIT:0> <EOL> end = <NUM_LIT:1> <EOL> gmax = <NUM_LIT:0> <EOL> while end < length : <EOL> if not start < end : return <NUM_LIT:0> <EOL> for i in xrange ( start , end ) : <EOL> gmax = max ( gmax , A [ i ] + i ) <EOL> counter += <NUM_LIT:1> <EOL> start = end <EOL> end = gmax + <NUM_LIT:1> <EOL> return counter <EOL> if __name__ == "<STR_LIT:__main__>" : <EOL> print Solution ( ) . jump ( [ <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:4> ] ) <EOL> assert Solution ( ) . jump ( [ <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:4> ] ) == <NUM_LIT:2> </s>
