#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define Shoyo ios_base::sync_with_stdio(0);cin.tie(NULL);
#define ff first
#define ss second
#define pii pair<ll,ll>
#define all(v) v.begin(), v.end()
#define allr(v) v.rbegin(), v.rend()
#define cl(x,y) (x + y - 1) / y
#define el "\n"
ll Mod=998244353;
const pii adj[]={{0,1},{1,0},{-1,0},{0,-1}};
const ll N=2e5+5,M=1e5+7;
ll n;
ll dp[N];
ll val[N];
map<ll,ll> mp;
ll sol(ll i) {
if (i==n)return 0;
ll &res=dp[i];
if (~res)return res;
res=1;
for (ll j=i+1;j<n;j++) {
if (val[j]==val[i]+1) {
res=max(res,1+sol(j));
}
}
return res;
}
void dfs(ll i) {
cout<<mp[val[i]]<<" ";
for (ll j=i+1;j<n;j++) {
if (val[j]==val[i]+1) {
dfs(j);
break;
}
}
}
void solve() {
cin>>n;
memset(dp,-1,sizeof(dp));
for(ll i=0;i<n;i++) {
cin>>val[i];
mp[val[i]]=i+1;
}
ll best=0,ii=0;
for (ll i=0;i<n;i++) {
if (sol(i)>best) {
best=sol(i);
ii=i;
}
}
cout<<best<<el;
dfs(ii);
}
int main(){
Shoyo;
ll t=1;
// if(!(cin >> t)) return 0;
while(t--) {
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGxsOwojZGVmaW5lIFNob3lvIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZShOVUxMKTsKI2RlZmluZSBmZiBmaXJzdAojZGVmaW5lIHNzIHNlY29uZAojZGVmaW5lIHBpaSBwYWlyPGxsLGxsPgojZGVmaW5lIGFsbCh2KSB2LmJlZ2luKCksIHYuZW5kKCkKI2RlZmluZSBhbGxyKHYpIHYucmJlZ2luKCksIHYucmVuZCgpCiNkZWZpbmUgY2woeCx5KSAgKHggKyB5IC0gMSkgLyB5CiNkZWZpbmUgZWwgIlxuIgpsbCBNb2Q9OTk4MjQ0MzUzOwpjb25zdCBwaWkgYWRqW109e3swLDF9LHsxLDB9LHstMSwwfSx7MCwtMX19Owpjb25zdCBsbCBOPTJlNSs1LE09MWU1Kzc7CmxsIG47CmxsIGRwW05dOwpsbCB2YWxbTl07Cm1hcDxsbCxsbD4gbXA7CmxsIHNvbChsbCBpKSB7CiAgICBpZiAoaT09bilyZXR1cm4gMDsKbGwgJnJlcz1kcFtpXTsKICAgIGlmICh+cmVzKXJldHVybiByZXM7CiAgICByZXM9MTsKICAgIGZvciAobGwgaj1pKzE7ajxuO2orKykgewogICAgICAgIGlmICh2YWxbal09PXZhbFtpXSsxKSB7CiAgICAgICAgICAgIHJlcz1tYXgocmVzLDErc29sKGopKTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gcmVzOwp9CnZvaWQgZGZzKGxsIGkpIHsKICAgIGNvdXQ8PG1wW3ZhbFtpXV08PCIgIjsKICAgIGZvciAobGwgaj1pKzE7ajxuO2orKykgewogICAgICAgIGlmICh2YWxbal09PXZhbFtpXSsxKSB7CiAgICAgICAgICAgIGRmcyhqKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQp9CnZvaWQgc29sdmUoKSB7CiAgICBjaW4+Pm47CiAgICBtZW1zZXQoZHAsLTEsc2l6ZW9mKGRwKSk7CiAgICBmb3IobGwgaT0wO2k8bjtpKyspIHsKICAgICAgICBjaW4+PnZhbFtpXTsKICAgICAgICBtcFt2YWxbaV1dPWkrMTsKICAgIH0KICAgIGxsIGJlc3Q9MCxpaT0wOwogICAgZm9yIChsbCBpPTA7aTxuO2krKykgewogICAgICAgIGlmIChzb2woaSk+YmVzdCkgewogICAgICAgICAgICBiZXN0PXNvbChpKTsKICAgICAgICAgICAgaWk9aTsKICAgICAgICB9CiAgICB9CiAgICBjb3V0PDxiZXN0PDxlbDsKICBkZnMoaWkpOwoKfQppbnQgbWFpbigpewogICAgU2hveW87CiAgICBsbCB0PTE7CiAgICAvLyAgaWYoIShjaW4gPj4gdCkpIHJldHVybiAwOwogICAgd2hpbGUodC0tKSB7CiAgICAgICAgc29sdmUoKTsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==