#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n, a[100000], b[100000];
  set<int> ss;
  cin >> n;
  for (int i = 0; i < n; i++) cin >> a[i];
  for (int i = 0; i < n; i++) cin >> b[i];
  if (n > 1) {
    long long aa = a[0], bb = b[0], d[100000], min, aar = a[0], bbr = b[n - 1],
              dr[100000], minr;
    min = a[0] - b[0];
    d[0] = min;
    minr = a[0] - b[n - 1];
    dr[0] = minr;
    for (int i = 1; i < n; i++) {
      aa += a[i];
      bb += b[i];
      aar += a[n - i];
      bbr += b[n - i - 1];
      d[i] = aa - bb;
      dr[i] = aar - bbr;
      if (dr[i] < minr) minr = dr[i];
      if (d[i] < min) min = d[i];
    }
    long long p = 0, r[100000];
    for (int i = 0; i < n; i++) {
      if (min >= 0) {
        ss.insert(i + 1);
      }
      min -= a[i] - b[i];
      if (minr >= 0) {
        if (i == 0)
          ss.insert(i + 1);
        else
          ss.insert(n - i + 1);
      }
      minr -= a[(n - i) % (n)] - b[n - i - 1];
    }
    cout << ss.size() << endl;
    set<int>::iterator it;
    for (it = ss.begin(); it != ss.end(); it++) cout << *it << " ";
  } else {
    if (a[0] >= b[0])
      cout << "1" << endl << "1";
    else
      cout << 0;
  }
  return 0;
}
