HackerRank python练习——Taum and B‘day

Taum and B’day

题目链接

思路

这一题想复杂了,当时的思路是列举出各种可能:如果黑色礼物/白色礼物的价格相等;如果黑色礼物比白色礼物贵,白色转黑色贵以及白色转黑色便宜等等,也就是用枚举法解决,代码如下:

def taumBday(b, w, bc, wc, z):
    if bc == wc:
        return b * bc + w * wc
    elif bc > wc:
        if bc >= (wc + z):
            return b * (wc + z) + w * wc
        elif bc < (wc + z):
            return b * bc + w * wc
    elif bc < wc:
        if wc >= (bc + z):
            return b * bc + w * (bc + z)
        elif wc < (bc + z):
            return b * bc + w * wc

后来看到他人的解决办法,代码如下:

def taumBday(b, w, bc, wc, z):
    return b * min(bc,wc+z) + w * min(wc,bc+z)

然后就知道了,比较大小除了用枚举法,还可以用min()/max()函数来解决。

你可能感兴趣的:(HackerRank练习)