#include <bits/stdc++.h>
using namespace std;
bool cmp(long long a, long long b) {
  if (a > b) return true;
  return false;
}
long long a, b, n, l, t, m, r;
long long f(long long k) {
  return ((k - l + 1) * ((a + ((l - 1) * b)) + (a + ((k - 1) * b)))) / 2;
}
long long search(long long s, long long h) {
  if (s > h) {
    if (s > r) s = r;
    while (f(s) < (t * m)) {
      if (s != r)
        ++s;
      else
        break;
    }
    while (f(s) > (t * m)) {
      if (s != l)
        --s;
      else
        break;
    }
    if (s == l && f(s) > (t * m)) return -1;
    return s;
  }
  long long mid = (s + h) / 2;
  long long an = f(mid);
  if (an < (t * m)) {
    search(mid + 1, h);
  } else if (an > (t * m)) {
    search(s, mid - 1);
  } else
    return mid;
}
void scan() { scanf("%lld%lld%lld", &a, &b, &n); }
void out() {
  for (int i = 0; i < n; i++) {
    scanf("%lld%lld%lld", &l, &t, &m);
    r = (t - a) / b + 1;
    if (r >= l)
      printf("%lld\n", search(l, r));
    else
      printf("-1\n");
  }
}
int main() {
  scan();
  out();
  return 0;
}
