解析:
枚举
#include<bits/stdc++.h>
using namespace std;
int n,m,d,t;
map<int,int>mp;
int main(){
scanf("%d%d%d",&n,&m,&d);
for(int i=1;i<=n*m;i++){
scanf("%d",&t);
mp[t]++;
}
int res=-1;
for(auto i:mp){
int cnt=0;
for(auto j:mp){
if(i.first==j.first) continue;
if(abs(i.first-j.first)%d){
cnt=-1;
break;
}
cnt+=abs(i.first-j.first)/d*j.second;
}
if(cnt!=-1&&(res==-1||cnt<res)) res=cnt;
}
printf("%d",res);
return 0;
}