#include <bits/stdc++.h>
using namespace std;
struct child {
  long long cd, ch, con;
};
child a[4004];
long long n, vis[4040];
void cal(int j) {
  vis[j] = 1;
  for (int i = j + 1; i < n; i++) {
    if (!vis[i]) {
      a[i].con -= a[j].ch;
    }
  }
  for (int i = j + 1; i < n; i++) {
    if (!vis[i]) {
      if (a[i].con < 0) cal(i);
    }
  }
}
void simulate() {
  vector<int> ans;
  for (int i = 0; i < n; i++) {
    if (!vis[i]) {
      ans.push_back(i + 1);
      vis[i] = 1;
      long long hc = a[i].cd;
      for (int j = i + 1; hc > 0 && j < n; j++) {
        if (!vis[j]) {
          a[j].con -= hc;
          hc--;
        }
      }
      for (int j = i + 1; j < n; j++) {
        if (!vis[j]) {
          if (a[j].con < 0) cal(j);
        }
      }
    }
  }
  cout << ans.size() << '\n';
  for (auto i : ans) {
    cout << i << ' ';
  }
}
int main() {
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> a[i].cd >> a[i].ch >> a[i].con;
  }
  simulate();
}
