#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define INF (1<<29) #define rep(i,n) for(int i=0;i<(int)(n);i++) #define all(v) v.begin(),v.end() #define uniq(v) v.erase(unique(all(v)),v.end()) #define indexOf(v,x) (find(all(v),x)-v.begin()) int main() { ios::sync_with_stdio(0); cin.tie(0); map> mp; int n,d,t; cin>>n>>d>>t; rep(i,n){ int x; cin>>x; x+=1000000000; mp[x%d].push_back(x/d); } long long ans=n; for(auto p : mp){ sort(all(p.second)); uniq(p.second); int prev=p.second.front()-1; for(auto x : p.second){ ans+=min(2*t,x-prev-1); prev=x; } ans+=2*t; } cout<