• + 0 comments

    For Java, using the knowledge that the ranked List is already sorted in descending order:

    `public static List climbingLeaderboard(List ranked, List player) { // Write your code here final var rankingMap = new TreeMap(Comparator.naturalOrder().reversed()); int currentRank = 1; for (Integer rank : ranked) { if (!rankingMap.containsKey(rank)) { rankingMap.put(rank, currentRank); currentRank++; } }

        return player.stream().map(score -> {
            final var lowerEntry = rankingMap.lowerEntry(score);
            if (lowerEntry == null) {
                return 1;
            }
            return lowerEntry.getValue() + 1;
            }).collect(Collectors.toList());
    }