Pagini recente » Cod sursa (job #1168592) | Cod sursa (job #3285336) | Cod sursa (job #2533153) | Cod sursa (job #118989) | Cod sursa (job #844055)
Cod sursa(job #844055)
#include <stdio.h>
#include <algorithm>
using namespace std;
struct par
{
int x, pos;
} x[300100];
bool comp(par A, par B)
{
return A.x < B.x;
}
int Q[300100], where[300100];
int main()
{
int i, p, u, N, D;
freopen("partitie.in", "r", stdin);
freopen("partitie.out", "w", stdout);
scanf("%d%d", &N, &D);
for (i = 1; i <= N; i ++)
{
scanf("%d", &x[i].x);
x[i].pos = i;
}
sort(x + 1, x + N + 1, comp);
p = 1; u = 0;
for (i = 1; i <= N; i ++)
{
if (p <= u && Q[p] + D <= x[i].x)
p ++, Q[++ u] = x[i].x;
else
Q[++ u]
}
}