Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <stdio.h>#include <math.h>using namespace std;typedef long long ll;const ll mod=1000000009;ll m[101];void jiec(){m[0]=1;m[1]=1;ll ans=1;for(ll i=2;i<=100;i++) m[i]=(m[i-1]*i)%mod;}ll c(ll a,ll b){return m[a]/(m[b]*m[a-b]%mod);}int main(){jiec();int n,m,k;cin>>n>>m>>k;ll a[n],ans=0;for(int i=0;i<n;i++) cin>>a[i];for(int i=0;i<n-m;i++){ll temp=1;for(int j=i+1;j<n;j++){if(abs(a[i]-a[j])%k==0) temp++;}if(temp>=m){ans=(ans+c(temp-1,m-1))%mod;