[Offer收割]编程练习赛49 register

Ended

Participants:177

Verdict:Wrong Answer
Score:40 / 100
Submitted:2018-03-04 13:46:28

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#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;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX