// Gyak_Tuzijatek.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n, pos, k;
cin >> n >> pos >> k;
vector<int> dist;
for (size_t i = 0; i < n; i++)
{
int a;
cin >> a;
dist.push_back(a);
}
int curSmallest = dist[pos - 1];
vector<int> more;
vector<int> less;
for (int i = pos; i < n; i++)
{
if (dist[i] >= curSmallest+k) {
curSmallest = dist[i];
more.push_back(i);
}
}
curSmallest = dist[pos - 1];
for (int i = pos-2; i >= 0; i--)
{
if (dist[i]+k <= curSmallest) {
curSmallest = dist[i];
less.push_back(i);
}
}
cout << less.size() + more.size() + 1 << "\n";
for (size_t i = 0; i < less.size(); i++)
{
cout << less[less.size()-i-1]+1 << " ";
}
cout << pos << " ";
for (size_t i = 0; i < more.size(); i++)
{
cout << more[i]+1 << " ";
}
}
// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu
// Tips for Getting Started:
// 1. Use the Solution Explorer window to add/manage files
// 2. Use the Team Explorer window to connect to source control
// 3. Use the Output window to see build output and other messages
// 4. Use the Error List window to view errors
// 5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
// 6. In the future, to open this project again, go to File > Open > Project and select the .sln file