#include #include #include #include using namespace std; void calculate(vector > samples, string R, string F, int L) { int count = 0; for (int i = samples.size() - 1; i >= 1; i--) { long long time = samples[i].first; int min = INT_MAX, max = INT_MIN; double avg; int avgCount = 0, sum = 0; for (int j = i - 1; j >= 0 && (time - L) <= samples[j].first; j--) { if (F == "min") { if (samples[j].second < min) min = samples[j].second; } else if (F == "max") { if (samples[j].second > max) max = samples[j].second; } else if (F == "avg") { sum += samples[j].second; avgCount++; } } if (F == "min") { if (R == "lt") { if (samples[i].second < min) count++; } else if (R == "gt") { if (samples[i].second > min) count++; } } else if (F == "max") { if (R == "lt") { if (samples[i].second < max) count++; } else if (R == "gt") { if (samples[i].second > max) count++; } } else if (F == "avg") { avg = sum/(double)(avgCount); if (R == "lt") { if (samples[i].second < avg) count++; } else if (R == "gt") { if (samples[i].second > avg) count++; } } } cout << count << endl; } int main() { int N; while (cin >> N) { vector > samples; for (int i = 0; i < N; i++) { long long time; int value; cin >> time >> value; samples.push_back(pair(time, value)); } int C; cin >> C; for (int i = 0; i < C; i++) { string R, F; int L; cin >> R >> F >> L; calculate(samples, R, F, L); } } return 0; }