View Code of Problem 6

#include<stdio.h>
int jump(int dis,int trap1[],int num,int trap2[])
{
int i,j;
	i=dis;
	for(j=1;j<num-1;++j)
	{
		i=i+dis;
	if(i<trap2[j]||i>trap1[j+1])
		return 0;
}
	i=i+dis;
	if(i<trap2[j])
	return 0;
	else
return 1;
	
}
int main()
{
	int q[100],h[100],shi,mo,l,i,num,j=0;
	scanf("%d",&num);
	while(j<num)
	{
scanf("%d",&l);
	for(i=0;i<l;++i)
	{
	scanf("%d %d",&q[i],&h[i]);
	}
shi=h[0];
while(shi<=q[1])
	{
		
	if(jump(shi,q,l,h)==1)
	{
			printf("YES\n");
		break;
	}
		else
		shi++;
}
	if(shi>q[1])
		printf("NO\n");
	++j;
}
return 0;
}

Double click to view unformatted code.


Back to problem 6