/* -*- coding: utf-8 -*- * * 2803.cc: No.2803 Bocching Star - yukicoder */ #include #include #include using namespace std; /* constant */ const int MAX_N = 200000; /* typedef */ using pii = pair; /* global variables */ int ps[MAX_N], as[MAX_N]; pii pis[MAX_N]; /* subroutines */ /* main */ int main() { int n, s; scanf("%d%d", &n, &s); for (int i = 0; i < n; i++) scanf("%d", ps + i); for (int i = 0; i < n; i++) pis[i] = {ps[i], i}; sort(pis, pis + n); int m = 0; for (int i = 0; i < n; i++) if ((i == 0 || pis[i - 1].first + s < pis[i].first) && (i == n - 1 || pis[i].first + s < pis[i + 1].first)) as[m++] = pis[i].second; sort(as, as + m); printf("%d\n", m); for (int i = 0; i < m; i++) printf("%d%c", as[i] + 1, (i + 1 < m) ? ' ' : '\n'); return 0; }