• Day 68


    第538题:

    给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。来源:力扣(LeetCode)

    1、 二叉搜索树,可知它的中序遍历是升序的,那么它的中序遍历反过来就是一个降序的序列;

      而转换成累加树,就是将每个节点的值加上树里面所有比它大的值;

      那么遍历到第一个时,它是最大的,不需要加任何数,当遍历到后面的元素时,将前面累加的所有比它大的累加到这个元素内;

      最后就得到了最后的累加树。

      

    第506题:

    出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌。前三名运动员将会被分别授予 “金牌”,“银牌” 和“ 铜牌”("Gold Medal", "Silver Medal", "Bronze Medal")。来源:力扣(LeetCode)

    (注:分数越高的选手,排名越靠前。)

    1、对数组内的各个成绩进行大小判断,前三可以获得金银铜牌;

      我们需要先用哈希表记录下每个人成绩再原数组内的位置 ,然后对成绩进行排序;

      将res内对应的前三名的成绩下标对应的值改为金银铜牌,其他的成绩排名也加入数组res。

      

  • 相关阅读:
    POJ 1721 CARDS(置换群)
    HDU 4609 3-idiots(FFT)
    BZOJ 4259 残缺的字符串(FFT)
    HDU 5763 Another Meaning(FFT)
    BZOJ 4503 两个串(FFT)
    hihoCoder 1388 Periodic Signal(FFT)
    HDU 5823 color II(FWT)
    HDU 5768 Lucky7(CRT+容斥原理)
    HDU 5446 Unknown Treasure(Lucas定理+CRT)
    HDU 5741 Helter Skelter(构造法)
  • 原文地址:https://www.cnblogs.com/liang-yi-/p/13708113.html
Copyright © 2020-2023  润新知