Lang:G++
Edit123456789101112131415161718192021222324252627#include <cstdio>#include <algorithm>#define rep(i,a,b) for(int i = a; i < b; i++)int a[100000];int main() {int n,m,h,r;scanf("%d %d %d %d",&n,&m,&h,&r);rep(i,0,n) scanf("%d",&a[i]);std::sort(a,a+n);int res = 0,ans = 0;if(a[0]<=r) {ans = 1;rep(i,1,n) {if(a[i]>r+ans) break;if(a[i]-a[i-1]>m) {res += ans;ans = 0;if(a[i]>r) break;}ans ++;}}res += ans;if(res>h) res = h;printf("%d\n",res);}