View Code of Problem 6

#include<stdio.h>
#define SIZE 100
#define Y "YES\n"
#define N "NO\n"
int main() {
	int t, n, step = 0;
	int l[SIZE];
	int r[SIZE];
	scanf("%d", &t);
	while (t-- > 0) {
		scanf("%d", &n);
		for (int i = 0; i < n; i++) {
			scanf("%d %d", l + i, r + i);
			int temp = r[i] - l[i];
			step = step > temp ? step : temp;
		}
		if (n == 1) {
			printf(Y);
			continue;
		}
		bool flag = true;
		int pos = l[0];
		for (int i = 0; i < n - 1; i++) {
			pos += step;
			if (pos > l[i + 1]) {
				flag = false;
				break;
			}
		}
		printf(flag ? Y : N);
	}

	return 0;
}

Double click to view unformatted code.


Back to problem 6