python,2和7结果RE了,不知道为啥
查看原帖
python,2和7结果RE了,不知道为啥
1322673
donk楼主2024/4/6 18:24
#同余定理
def count_k_multiple_intervals(N, K, nums):
    prefix_sum = [0] * (N + 1)  # 初始化前缀和数组,长度为 N+1 以包含所有区间
    count = 0

    # 计算前缀和
    for i in range(1, N + 1):#1-N
        prefix_sum[i] = prefix_sum[i - 1] + nums[i - 1]


    dict1={}
    # 遍历前缀和数组,计算区间和
    for i in range(0, N+1):
        if prefix_sum[i]%K not in dict1:
            dict1[prefix_sum[i]%K]=1
        else:
            dict1[prefix_sum[i] % K]+=1
    # print(dict1)
    for i in range(K):
        count+=int(dict1[i]*(dict1[i]-1)/2)

    return count

# 输入处理
N, K = map(int, input().split())
nums = [int(input()) for _ in range(N)]

# 调用函数并输出结果
print(count_k_multiple_intervals(N, K, nums))
2024/4/6 18:24
加载中...