#include <bits/stdc++.h>
using namespace std;
#define int long long
#define JD(x) setprecision(x)
const double PI=acos(-1.0);
const int maxn=1e5+5;
const int mod=1e9+7;
priority_queue<int,vector<int>,greater<int> >q;
int s[maxn];
int sm[maxn];
int cnt[maxn];
signed main(){
std::ios::sync_with_stdio(false);
std::cin.tie(0);
std::cout.tie(0);
int n,k;cin>>n>>k;
for(int i=1;i<=n;i++)cin>>s[i];
for(int i=1;i<=n;i++)
sm[i]=sm[i-1]+s[i];
int ans=0;
cnt[0]=1;
for(int i=1;i<=n;i++){
int x=sm[i]%k;
ans+=cnt[x];
cnt[x]++;
}
cout<<ans<<endl;
return 0;
}