正整数列表中的最大和,不带重复数字

时间:2019-05-31 16:56:17

标签: python-2.7

在水平线上放置N个框,每个框上都写有一个正整数。找出可以通过选择框子集而形成的最大和,但是框子集不能有任何共同数字。

我尝试了下面的代码,并且工作正常,并且得到了预期的结果。但是,当我提交此代码时,所有测试用例均未通过。如果我在这里缺少东西,我正在寻求帮助吗?我已经复制了上面的确切问题。

input_list = [121, 23, 3, 333, 4]
input_list.sort(reverse=True)
print input_list

temp_list1 = []
max_sum = 0

for i in input_list:
    num = i
    flag = 'Y'
    temp_list2 = []
    x = -1
    y = -1
    while x != 0:
        x = i / 10
        y = i % 10
        i = x
        if y in temp_list1:
            flag = 'N'
            break
        else:
            temp_list2.append(y)

    if flag == 'Y':
        temp_list1 = temp_list1 + temp_list2
        max_sum = max_sum + num

print max_sum

预期输入:- 121 23 3 333 4

预期输出:- 458

0 个答案:

没有答案