#include <bits/stdc++.h>
using namespace std;
vector<bool> mark(100000000, false);
int prime[8000000];
int nprime;
void sieve(int n) {
  int limit = sqrt(n * 1.0) + 1, s = 0;
  nprime = 0;
  mark[1] = true;
  mark[2] = false;
  prime[nprime++] = 2;
  for (int i = 4; i <= n; i += 2) mark[i] = true;
  for (int i = 3; i <= n; i += 2) {
    if (!mark[i]) {
      prime[nprime++] = i;
      if (i <= limit) {
        for (int j = i * i; j <= n; j += i * 2) {
          mark[j] = true;
        }
      }
    }
  }
  for (int i = 1; i <= nprime; i += 100) cout << prime[i - 1] << endl;
}
long long int l1[200005], l2[200005];
int main() {
  long long int t, i, q, n, k, l, c, d, p, nl, np, a, e, m,
      b = 0, x1 = 1000000005, x3 = 0, x4 = 0, x5 = 0, x6 = 0;
  double x10 = 0;
  vector<int> v;
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> l1[i];
    b += l1[i];
  }
  for (int i = 0; i < n; i++) {
    if (b == n * l1[i]) {
      x3++;
      v.push_back(i + 1);
    }
  }
  cout << x3 << endl;
  for (int i = 0; i < v.size(); i++) cout << v[i] << " ";
  return 0;
}
