题目来源:
https://www.lanqiao.cn/problems/97/learning/?page=1&first_category_id=1&difficulty=20
#include <iostream>
#include <vector>
#define ll long long
void solve(){
ll n,k;
std::cin >> n >> k;
std::vector<ll> op(n + 1),dp(n + 1);
dp[0] = 1;
ll res = 0;
for(ll i = 1; i <= n; i ++){
std::cin >> op[i];
op[i] += op[i - 1];
res += dp[op[i] % k];
dp[op[i] % k] ++;
}
std::cout << res << "\n";
}
int main(){
ll t = 1;
// std::cin >> t;
while(t --){
solve();
}
return 0;
}