#include <bits/stdc++.h>
#define taskname ""
#define ff first
#define ss second
using namespace std;
using ld = long double;
using ull = unsigned long long;
using ll = long long;
using pll = pair <ll, ll>;
using pii = pair <int, int>;
const char el = '\n';
const char sp = ' ';
const ll oo = 1e9; //1e18;
const ll maxN = 2e5 + 5;
int n, e, c = 0, a[maxN];
map <int, int> mp;
int main ()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
if (fopen(taskname".inp", "r"))
{
freopen(taskname".inp","r",stdin);
freopen(taskname".out","w",stdout);
}
cin >> n;
for(int i = 1;i <= n;++i)
{
cin >> a[i];
mp[a[i]] = mp[a[i] - 1] + 1;
if(c < mp[a[i]]) {
c = mp[a[i]];
e = a[i];
}
}
cout << c << el;
vector<int> vec;
for(int i = n;i > 0;--i)
if(a[i] == e) {
vec.push_back(i);
e--;
}
for(int i = vec.size() - 1;i >= 0;i--) cout << vec[i] << ' ';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgdGFza25hbWUgIiIKI2RlZmluZSBmZiBmaXJzdAojZGVmaW5lIHNzIHNlY29uZAp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBsZCA9IGxvbmcgZG91YmxlOwp1c2luZyB1bGwgPSB1bnNpZ25lZCBsb25nIGxvbmc7CnVzaW5nIGxsID0gbG9uZyBsb25nOwp1c2luZyBwbGwgPSBwYWlyIDxsbCwgbGw+Owp1c2luZyBwaWkgPSBwYWlyIDxpbnQsIGludD47CmNvbnN0IGNoYXIgZWwgPSAnXG4nOwpjb25zdCBjaGFyIHNwID0gJyAnOwpjb25zdCBsbCBvbyA9IDFlOTsgLy8xZTE4Owpjb25zdCBsbCBtYXhOID0gMmU1ICsgNTsKaW50IG4sIGUsIGMgPSAwLCBhW21heE5dOwptYXAgPGludCwgaW50PiBtcDsKCmludCBtYWluICgpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CiAgICBjaW4udGllKDApOwogICAgaWYgKGZvcGVuKHRhc2tuYW1lIi5pbnAiLCAiciIpKQogICAgewogICAgICAgIGZyZW9wZW4odGFza25hbWUiLmlucCIsInIiLHN0ZGluKTsKICAgICAgICBmcmVvcGVuKHRhc2tuYW1lIi5vdXQiLCJ3IixzdGRvdXQpOwogICAgfQogICAgY2luID4+IG47CiAgICBmb3IoaW50IGkgPSAxO2kgPD0gbjsrK2kpCiAgICB7CiAgICAgICAgY2luID4+IGFbaV07CiAgICAgICAgbXBbYVtpXV0gPSBtcFthW2ldIC0gMV0gKyAxOwogICAgICAgIGlmKGMgPCBtcFthW2ldXSkgewogICAgICAgICAgICBjID0gbXBbYVtpXV07CiAgICAgICAgICAgIGUgPSBhW2ldOwogICAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgYyA8PCBlbDsKICAgIHZlY3RvcjxpbnQ+IHZlYzsKICAgIGZvcihpbnQgaSA9IG47aSA+IDA7LS1pKQogICAgICAgIGlmKGFbaV0gPT0gZSkgewogICAgICAgICAgICB2ZWMucHVzaF9iYWNrKGkpOwogICAgICAgICAgICBlLS07CiAgICAgICAgfQoKICAgIGZvcihpbnQgaSA9IHZlYy5zaXplKCkgLSAxO2kgPj0gMDtpLS0pIGNvdXQgPDwgdmVjW2ldIDw8ICcgJzsKfQo=