View Code of Problem 6

#include <stdio.h>
int main()
{
	int T, n, i, j, k, a[1000], b[1000], N, m, t, step;
	scanf("%d", &T);
	for (k = 1; k <= T; k++)
	{
		scanf("%d", &n);
		for (j = 0; j < n; j++)
		{
			scanf("%d %d", &a[j], &b[j]);
		}
		for (i = 0; i < n - 1; i++)
		{
			t = i;
			for (j = i; j < n; j++)
				if (a[t]>a[j])t = j;
			if (t != i)
			{
				m = a[i];
				a[i] = a[t];
				a[t] = m;
				m = b[i];
				b[i] = b[t];
				b[t] = m;
			}
		}
		step = b[0] - a[0];
		for (i = b[0], j = 0; i <=b[n - 1]&&j<n; i += step, j++)
		{
			if ((a[j] < i&&i<b[j])||(j+1<n&&i>a[j+1]))
			{
				printf("NO\n");
				break;
			}
		}
		if (i>=b[n-1])printf("YES\n");
	}
}

Double click to view unformatted code.


Back to problem 6