Sort by

recency

|

2395 Discussions

|

  • + 0 comments

    Getting "timeout" when submitting, your need to improve your code's performance. I resolved my timeout test cases by using a customized binary search to find the ranking for a play score. Cheers!

  • + 0 comments
    function climbingLeaderboard(ranked: number[], player: number[]): number[] {
      let uniqueRanks = Array.from(new Set(ranked));
    
      let pos = 0;
      let ans = new Array(player.length).fill(1);
    
      for (let i = uniqueRanks.length - 1; i >= 0; i--) {
        while (player[pos] < uniqueRanks[i] && pos < player.length) {
          ans[pos] = i + 2;
          pos++;
        }
      }
      return ans;
    }
    
  • + 0 comments

    ` def climbingLeaderboard(ranked, player): ranks = list(set(ranked)) ranks.sort(reverse=True)

    res = []
    for p in player:
        low, high = 0, len(ranks)
        while low < high:
            mid = (low + high) // 2
            if ranks[mid] > p:
                low = mid + 1
            else:
                high = mid
        res.append(low+1)
    return res
    
  • + 1 comment

    C# Solved

    https://red-horse.tistory.com/135

  • + 0 comments

    I guess in Java the ranked input is not always sorted correctly. Tried it multiple ways and always failed. As soon as I sorted "ranked" manually and didnt count on it to be sorted I passed.