题目链接我这里写的sum[i]数组是下标0-i各个元素之和。cnt[dex]是指i之前的前缀和中对k取余为dex的数组个数,如果我遍历到这个数字了,我就计算这个数字之前和我前缀和模k数字相同的前缀和个数,累加即可。值得注意的是我们在计算的过程中要将cnt[0]设为1,因为如果到que[i]这里前缀和模k为0,则说明1到i的和就是符合要求的,我们要加1。#include<bits/stdc++.h> using namespace std;const int N=100005;long