PAT 1012 数字分类

这段代码包含五个函数solutions_A1到solutions_A5,分别处理不同条件下的数字列表。每个函数检查列表中数字对特定模数的余数,并进行相应的操作,如求和、计算差值、计数等。最后输出各函数的结果。
摘要由CSDN通过智能技术生成
nums = input().split()
nums = list(map(int, nums))
nums.pop(0)


def solutions_A1(nums):
    ans = []
    for num in nums:
        if num % 5 == 0 and num % 2 == 0:
            ans.append(num)
    return sum(ans) if sum(ans) != 0 else 'N'


def solutions_A2(nums):
    ans = 0
    res = []
    for num in nums:
        if num % 5 == 1:
            res.append(num)

    for i in range(0, len(res), 2):
        if i + 1 < len(res):
            ans += res[i] - res[i + 1]
        else:
            ans += res[i]
    return ans if len(res) != 0 else "N"


def solutions_A3(nums):
    cnt = 0
    for num in nums:
        if num % 5 == 2:
            cnt += 1
    return cnt if cnt != 0 else "N"


def solutions_A4(nums):
    cnt = 0
    Sum = 0
    for num in nums:
        if num % 5 == 3:
            cnt += 1
            Sum += num
    return "N" if cnt == 0 else "{:.1f}".format(Sum / cnt)


def solutions_A5(nums):
    ans = 0
    for num in nums:
        if num % 5 == 4:
            ans = max(ans, num)
    return ans if ans > 0 else "N"


ans1 = solutions_A1(nums)
ans2 = solutions_A2(nums)
ans3 = solutions_A3(nums)
ans4 = solutions_A4(nums)
ans5 = solutions_A5(nums)
print(f"{ans1} {ans2} {ans3} {ans4} {ans5}")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值