吉林大学ACM集训队选拔赛 B Subset of Five【返回非零解】

n = int(input())
nums = list(map(int, input().split()))
nums.sort()
sum_ = 0
nums2 = [0] * n
for i in range(n):
    sum_ += nums[i]
    nums2[i] = nums[i] % 5
# print(nums2)
# print('sum_', sum_)
yu = sum_ % 5
# print(yu)
if yu == 0:
    print(sum_)
elif yu == 1:
    print(sum_ - nums[nums2.index(1)])
elif yu == 2:
    min_ = 10e9
    k1 = nums2.index(1)
    nums2[nums2.index(1)] = 0
    k2 = nums2.index(1)
    min_ = min(min_, nums[k1] + nums[k2])
    min_ = min(min_, nums[nums2.index(2)])
    print(sum_ - min_)
elif yu == 3:
    min_ = 10e9
    k1 = nums2.index(1)
    nums2[nums2.index(1)] = 0
    k2 = nums2.index(1)
    nums2[k2] = 0
    k3 = nums2.index(1)
    min_ = min(min_, nums[k1] + nums[k2] + nums[k3])
    s2 = nums2.index(2)
    min_ = min(min_, nums[k1] + nums[s2])
    min_ = min(min_, nums[nums2.index(3)])
    print(sum_ - min_)
elif yu == 4:
    min_ = 10e9
    k1 = nums2.index(1)
    nums2[nums2.index(1)] = 0
    k2 = nums2.index(1)
    nums2[k2] = 0
    k3 = nums2.index(1)
    nums2[k3] = 0
    k4 = nums2.index(1)
    min_ = min(min_, nums[k1] + nums[k2] + nums[k3] + nums[k4])
    s2 = nums2.index(2)
    nums2[s2] = 0
    min_ = min(min_, nums[k1] + nums[k2] + nums[s2])
    s1 = nums2.index(2)
    min_ = min(min_, nums[s1] + nums[s2])
    r1 = nums2.index(3)
    min_ = min(min_, nums[k1] + nums[r1])
    min_ = min(min_, nums[nums2.index(4)])
    print(sum_ - min_)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值