View Code of Problem 6

#include <stdio.h>

int main()
{
	int t, n;
	int trap[101][3]={0}; 
	scanf("%d", &t);
	while(t--)
	{
		int pos = 0, flag = 1;
		scanf("%d", &n);
		for(int i = 0; i < n; i++)
		{
			scanf("%d%d", &trap[i][0], &trap[i][1]);
			trap[i][2] = trap[i][1] - trap[i][0];
		}
		int max = trap[0][2];
		for(int i = 1; i < n; i++)
			if(trap[i][2] > max)
				max = trap[i][2];
		for(int i = 0; i < n-1; i++)
		{
			pos += max;
			if(pos < trap[i][1] || pos > trap[i+1][0])
				flag = 0;
		}
		pos += max;
		if(pos < trap[n-1][1])
			flag = 0;
		if(flag)
			printf("YES\n");
		else
			printf("NO\n");
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 6