You are viewing a single comment's thread. Return to all comments →
def createRank(scores): rank = [] currScore = scores[0] count = 1 for score in scores: if score != currScore: currScore = score count += 1 rank.append(count) return rank def climbingLeaderboard(ranked, player): rank = createRank(ranked) ranked.append(-1) rank.append(rank[-1]+1) res = [] pointer = len(ranked)-1 for playerScore in player: while pointer >= -1: if pointer - 1 >= 0: print(playerScore, ranked[pointer], rank[pointer]) if playerScore > ranked[pointer-1]: pointer -= 1 elif playerScore == ranked[pointer-1]: res.append(rank[pointer-1]) break else: if playerScore >= ranked[pointer]: res.append(rank[pointer]) break else: res.append(rank[pointer]+1) break else: if playerScore >= ranked[pointer]: res.append(rank[pointer]) break else: res.append(rank[pointer]+1) break return res
Seems like cookies are disabled on this browser, please enable them to open this website
Climbing the Leaderboard
You are viewing a single comment's thread. Return to all comments →
Python3 Solution