semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main(){
    
int pdz=0,x,y,n,a[1000],b[1000],aa[1000],bb[1000];
    
scanf("%d",&n);
    
for(int i=0;i<n;i++){
        
scanf("%d %d",&a[i],&b[i]);
        
aa[i]=a[i];
       
 bb[i]=b[i];
    }
   
 for(int j=0;j<n-1;j++){
        if(a[j]<a[j+1]){
            a[j+1]=a[j];
        }
        if(b[j]>b[j+1]){
            b[j+1]=b[j];
        }
    }
    x=a[n-1];
    y=b[n-1];
    for(double o=x;o<=y;o+=0.5){
        for(int q=0;q<n;q++){
            if(o>=aa[q]&&o<=bb[q]){
                pdz+=1;
                break;
            }
            else {
                pdz=0;
            }
        }
        if(pdz==0){
            break;
        }
    }
    if(pdz==0){
        printf("no");
    }
    else {
        printf("%d %d",x,y);
    }
    return 0;
}
int main()
{
	int i,j,k=0,n;
	int A[5000],B[5000];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d %d",&A[i],&B[i]);
	}
	for(j=n-1;j>0;j--)
	{
		for(i=0;i<j;i++)
		{
			if(A[i]>A[i+1])
			{
				int tap;
				tap=A[i];
				A[i]=A[i+1];
				A[i+1]=tap;
			    int tbp;
				tbp=B[i];
				B[i]=B[i+1];
				B[i+1]=tbp;
			}
		}
	}
	for(j=0;j<n-1;j++)
	{
		if(B[j]>B[j+1])
		{
			int tmp;
			tmp=B[j];
			B[j]=B[j+1];
			B[j+1]=tmp;
		}
	}
	for(i=0;i<n-1;i++)
	{
		if(A[i+1]<=B[i])
		{
			k++;
		}
	}
	if(k==n-1)
	{
		printf("%d %d\n",A[0],B[n-1]);
	}else {
		printf("no");
	}
	return 0;
}
void main()
{
	int c[10001],i,j,p,n,min,max,a,b;
	min=10000;
	max=0;
	for(i=0;i<10001;i++)
		c[i]=1;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d%d",&a,&b);
		if(a<min)
			min=a;
		if(b>max)
			max=b;
		for(j=a+1;j<b;j++)
		{
			c[j]=0;
		}
		if(c[a]==1)
			c[a]=2;
		else if(c[a]==2)
			c[a]=0;
		if(c[b]==1)
			c[b]=2;
		else if(c[b]==2)
			c[b]=0;
	}
	for(p=min+1;p<max;p++)
	{
		if(c[p]!=0)
			break;
	}
	if(p==max)
		printf("%d %d",min,max);
	else if(p<max)
		printf("no");
}
int main(){
      int n,a,b,p,q,k,i;
      int s[10010];
      scanf("%d",&n);
      p=500;
      q=0;
      for(i=0;i<n;i++)
{
      scanf("%d%d",&a,&b);
     if(p>a)
     p=a;
     if(q<b)
     q=b;
     for(int j=a;j<b;j++)
    {
      s[j]=5;
    }
}
    k=0;
    for(i=p;i<q;i++)
{
   if(s[i]!=5)
    k++;
   else  k=k;
}
  if(k==0)
 printf("%d %d\n",p,q);
 else printf("no");
 return 0;
}
int main()
{
	int n, sz1[number], sz2[number], j, k, l, mc, go;
	scanf("%d", &n);
	for(j=0;j<n;j++)
	{
		scanf("%d%d", &(sz1[j]), &(sz2[j]));
	}
	for(l=0;l<n;l++)
	{
		for(j=0;j<n-l;j++)
		{
			if(sz1[j]>sz1[j+1])
			{
		    	mc=sz1[j];
                sz1[j]=sz1[j+1];
				sz1[j+1]=mc;
				mc=sz2[j];
                sz2[j]=sz2[j+1];
				sz2[j+1]=mc;
			}
		}
	}
    for(j=2;j<n+1;j++)
	{
	    go=0;
		for(l=1;l<j;l++)
		{
			if(sz1[j]>sz2[l])
			    go++;
		}
		if(go==j-1)
			break;
	}
	if(go==j-1)
		printf("no");
	else if(go!=j-1)
	{
		for(l=1;l<n+1;l++)
		{
	        for(j=1;j<n+1;j++)
			{
	        	if(sz2[j]>sz2[j+1])
				{
					mc=sz2[j];
                    sz2[j]=sz2[j+1];
			       	sz2[j+1]=mc;
				}
			}
		}
	 	printf("%d %d", sz1[1], sz2[n+1]);
	}
	return 0;
}
int main()
{
	struct point
	{
		int a,b;
	}
	c[50001],t;
	int n,i,j;
	scanf("%d",&n);
	for (i=1;i<=n;i++) scanf("%d%d",&c[i].a,&c[i].b);
	for (i=1;i<n;i++)
	  for (j=n;j>i;j--)
	  {
  		 if (c[j].a<c[j-1].a) 
  		 {
 		  	t=c[j];c[j]=c[j-1];c[j-1]=t;
         }
  	  }
     int st=c[1].a,en=0;
     for (i=1;i<n;i++)
     {
     	if (c[i].b>en) en=c[i].b;
        if (en<c[i+1].a) break;
     	
     }
     if (i<n) printf("no");
       else printf("%d %d",st,en);
     return 0;
}
int main(){
	int n;
	scanf("%d",&n);
    int sz[50000][2];
	for(int i=0;i<n;i++){
		scanf("%d%d",&sz[i][0],&sz[i][1]);
	}

//??????
	int min=sz[0][0],max=sz[0][1];
	for(int a=0;a<n;a++){
		if(sz[a][0]<min)
			min=sz[a][0];
		if(sz[a][1]>max)
			max=sz[a][1];
	}

//??
	int qj[10000];
	int e=min;
	for(int b=0;b<max-min+1;b++){
		qj[b]=e;
		e++;
	}
	for(int t=0;t<max-min;t++){
		for(int c=0;c<n;c++){
			if(sz[c][0]<=qj[t]&&sz[c][1]>=qj[t+1])
				qj[t]=0;
		}
	}
	int w=0;
	for(int d=0;d<max-min;d++){
		if(qj[d]!=0)
			w++;
			
	}
	if(w==0)
		printf("%d %d",min,max);
	if(w!=0)
		printf("no");
return 0;
}
int main()
{
  int n;
  int a[50000];
  int b[50000];
  int k,i;
  int t,e;
  scanf("%d",&n);
  for(i=0;i<n;i++)
  {
    scanf("%d %d",&a[i],&b[i]);
  }
  for(k=1;k<n;k++)
  {
    for(i=0;i<n-k;i++)
	{
	  if(a[i]>a[i+1])
	  {
	    t=a[i];
		a[i]=a[i+1];
		a[i+1]=t;
		e=b[i];
		b[i]=b[i+1];
		b[i+1]=e;
	  }
	}
  }
  for(i=0;i<n;i++)
  {
   if(b[i]<a[i+1])
   {
      printf("no");
	 break;
   }
   else
   {
     if((b[i]>b[i+1])&&(i!=n-1))
	 {
	   t=b[i];
	   b[i]=b[i+1];
	   b[i+1]=t;
	 }
   }
   }
  if(i==n)
printf("%d %d",a[0],b[n-1]);
  return 0;
}
int main(){
int n,i,s,m,t;
scanf("%d",&n);
int a[50000],b[50000];
for(i=0;i<n;i++){
scanf("%d %d",&a[i],&b[i]);
if(i==0){
s=a[i];
m=b[i];
}
}
for(i=0;i<n;i++){
if(s>a[i]){
s=a[i];
}
}
for(i=0;i<n;i++){
if(m<b[i]){
m=b[i];
}
}
int p=0;
double e;
for(e=s+0.5;e<m;e++){
t=0;
for(i=0;i<n;i++){
if((e>a[i]&&e<b[i])){
t=1;
break;
}
}
if(t==0){
p=1;
}

}
if(p==0){
printf("%d %d",s,m);
}else{
printf("no");
}
return 0;
}
struct couple 
{
       int x;
       int y;
};

int main(int argc, char *argv[])
{
  int n,i,j;
  scanf("%d",&n);
  struct couple line[n],temp;
  for (i=0;i<=n-1;i++)
      scanf("%d%d",&line[i].x,&line[i].y);
  int min=line[0].x,max=line[0].y;
  for (i=0;i<=n-1;i++)
  {
      if (line[i].x<min)
      min=line[i].x;
      if (line[i].y>max)
      max=line[i].y;
  }
  int a[max-min+1];
  for (i=0;i<=max-min;i++)
      a[i]=1;
  for (i=0;i<=n-1;i++)
  {
      for (j=line[i].x-min;j<=line[i].y-min-1;j++)
      a[j]=0;
  }
  int flag=1;
  for (i=0;i<=max-min-1;i++)
  {
      if (a[i]!=0)
      flag=0;
  }
  if (flag==0)
  printf("no");
  else
  printf("%d %d",min,max);         
  return 0;
}
int main()
{
    int a[50000],b[50000],n,c[10000],i,j,x=0,y=0;
	scanf("%d",&n);
	for(i=0;i<10000;i++) c[i]=0;
	for(i=0;i<n;i++){
		scanf("%d %d",&a[i],&b[i]);
	}
	for(i=0;i<n;i++){
		for(j=0;j<10000;j++){
			if((j>=a[i])&&(j<b[i])) c[j]=1;
		}
	}
	x=a[0];
	y=b[0];
	for(i=0;i<n;i++){
		if(x>=a[i]) x=a[i];
		if(y<=b[i]) y=b[i];
	}
	j=0;
	for(i=x;i<y;i++){
		if(c[i]!=1){
		   printf("no");
		   j++;
		   break;
		}
		
	}
	if(j==0) printf("%d %d",x,y);

		
	
    return 0;

}
int main(){
	int n;
	int i,e,f,c,d,m;
	int sum=0;
	int a[50000],b[50000];
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d%d",&a[i],&b[i]);
	}
	for(int k=1;k<=n;k++){
		for(i=0;i<n-k;i++){
			if(a[i]>a[i+1]){
			e=a[i+1];
			a[i+1]=a[i];
			a[i]=e;
			f=b[i+1];
			b[i+1]=b[i];
			b[i]=f;
		}
	}
	}
	m=b[0];
	for(i=0;i<n;i++){
		if(m<b[i]){
			m=b[i];
		}
	}
	c=a[0];
	d=b[0];
	for(i=1;i<n;i++){
		if(a[i]<=d&&b[i]>d){
			d=b[i];
		}
	}
	if(d==m){
		printf("%d %d",c,d);
	}else{
		printf("no");
	}
	return 0;
}
int main()
{
	int n,a[50000],b[50000],i,j,t,max,min;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d %d",&a[i],&b[i]);
	}
	for(i=0;i<n;i++)
	{
		for(j=i+1;j<n;j++)
		{
			if(a[i]>a[j])
			{
				t=a[i];
				a[i]=a[j];
				a[j]=t;
				t=b[i];
				b[i]=b[j];
				b[j]=t;
			}
		}
	}
	min=a[0];
	max=b[0];
	j=1;
	for(i=1;i<n;i++)
	{
		if((a[i]<min)&&(b[i]>=min)) 
		{	min=a[i];
		     j++;
		}
		else if((b[i]>max)&&(a[i]<=max)) 
		{
			max=b[i];
			j++;
		}
		else if((a[i]==min)||(b[i]==max)) 
			j++;
		else if((a[i]>min)&&(b[i]<max)) 
			j++;
	}
	if(j==n)
		printf("%d %d",min,max);
	else
		printf("no");
	return 0;
}
int main()
{
	int max,min,n,a[len],b[len],i,j,jg[len];
	scanf("%d",&n);
	scanf("%d %d",&a[0],&b[0]);
	max=min=a[0];
	for(i=1;i<n;i++)
	{
		scanf("%d %d",&a[i],&b[i]);
		if(b[i]>max)
		{
			max=b[i];
		}
		if(a[i]<min)
		{
			min=a[i];
		}
	}
	for(i=min;i<max;i++)
	{
		jg[i]=0;
	}
	for(j=0;j<n;j++)
	{
		for(i=a[j];i<b[j];i++)
		{
			jg[i]=1;
		}
	}
	for(i=min;i<max;i++)
	{
	if(jg[i]==0)
		{
			printf("no");
			break;
		}
	if(i==max-1)
		{
			printf("%d %d",min,max);
		}
	
	}
	return 0;
}
int main()
{
	int a,b,e,i,j,m,n;
	int f[num];
	int g[num];
	m=2;
	a=10000;
	b=0;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&(f[i]));
		scanf("%d",&(g[i]));
	}
	for(i=0;i<n;i++)
	{
		if(f[i]<a)
			a=f[i];
		if(g[i]<a)
			a=g[i];
		if(f[i]>b)
			b=f[i];
		if(g[i]>b)
			b=g[i];
	}
	for(j=n-1;j>0;j--)
	{
		for(i=0;i<j;i++)
		{
			if(f[i]>f[i+1])
			{
				e=f[i];
				f[i]=f[i+1];
				f[i+1]=e;
				e=g[i];
				g[i]=g[i+1];
				g[i+1]=e;
			}
		}
	}
	e=0;
	for(i=1;i<n;i++)
	{
		for(j=0;j<i;j++)
		{
			if(f[i]>g[j])
				e++;
		}
		if(i==e)
			{
			m=3;
			break;
		}
		else
			e=0;
	}
	if(m==2)
	printf("%d %d",a,b);
	else
		printf("no");
   return 0;
}
int main(){
    int n,min=10000,max=0,p,q=0;
    int az[50000],bz[50000],sz[10000];
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%d %d",&az[i],&bz[i]);
    }
    for(int k=0;k<n;k++){
        if(min>az[k]){
           min=az[k];
        }
        if(max<bz[k]){
           max=bz[k];
        }
    }
    p=max-min;
    for(int m=min;m<=max;m++){
        sz[m]=0;
    }
    for(int t=0;t<n;t++){
        for(int x=az[t];x<bz[t];x++){
            sz[x]=1;
        }
    }
    for(int y=min;y<=max;y++){
        q=q+sz[y];
    }
    if(p==q){
        printf("%d %d",min,max);
    } else{
        printf("no");
    }
    return 0;
}
int main(){
	int n,i,e=0,min=0,max=0,a[50000],b[50000];
	double k;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d %d",&a[i],&b[i]);
    }
    for(i=0;i<n;i++){
		if(a[i]<a[min]){
			min=i;}
		if(b[i]>b[max]){
			max=i;}
	}
	for(k=a[min]+1.0/2;k<b[max];k++){
                e=0;
		for(i=0;i<n;i++){
			if(k>=a[i]&&k<=b[i]){
			e=1;}
		}
		if(e==0){break;}
	}
	if(e==1){
		printf("%d %d",a[min],b[max]);}
	else{printf("no");}
return 0;
}
int main()
{
int n,i,a[50000],b[50000],j,t,p,max;
   scanf("%d",&n);
   for(i=0;i<n;i++){
       scanf("%d %d",&a[i],&b[i]);
   }
   
   for(i=0;i<n;i++){
	   for(j=0;j<n;j++){
		   if(a[j]<a[j-1]){
			   t=a[j];
			   a[j]=a[j-1];
			   a[j-1]=t;
			   t=b[j];
			   b[j]=b[j-1];
			   b[j-1]=t;
		   }
	   }
   }
   
   p=2;
   max=b[0];
   for(i=0;i<n;i++){
	   if(a[i+1]>b[i]&&i==0){
		  p=1;
		  break;
	   }
	   if(a[i+1]>b[i]&&i!=0&&b[i]>=b[i-1]){
		  p=1;
		  break;
	   }
	   if(b[i]>max)
		   max=b[i];
   }

   if(p==2){
	   printf("%d %d",a[0],max);
   }
   if(p==1){
	   printf("no");
   }
   return 0;
}
int main(){
	int n,min=10000,max=0,a[1000],b[1000],i;
        double m;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d%d",&(a[i]),&(b[i]));
		if(a[i]<min)
		{
			min = a[i];
		}
		if(b[i]>max)
		{
			max = b[i];
		}

	}
	for(m=min*1.0+0.5;m<max;m++)
	{
		for(int l=0;l<n;l++)
		{
			if(m>=a[l]&&m<=b[l])
			{
				break;
			}
			if(l==n-1)
			{
				printf("no");
				return 0;
			}
		}
	}
	printf("%d %d",min,max);
        return 0;
}
int main(){
	int j,i,n,q,a,p;
double k;
	int m[50000][2];
	scanf("%d",&n);
	for(i=0;i<=n;i++){
		for(j=0;j<2;j++){
		scanf("%d",&m[i][j]);
	}
}
	q=m[0][0];
p=m[0][1];
	for(i=0;i<n;i++){
		if(m[i][0]<q){
			q=m[i][0];
		}
		if(m[i][1]>p){
			p=m[i][1];
		}
	}
	a=0;
	for(k=q+0.5;k<p;k++){
		for(j=0;j<=n;j++){
			if(k>=m[j][0]&&k<=m[j][1]){
				break;
			}else{ 
				if(j==n){
					a=1;
				}
			}
		}
	}
	if(a==0){
		printf("%d %d",q,p);
	}else{
		printf("no");
	}
	return 0;
}
int main(){
int a,b,c,d,e,k,f=0,n,sz[50001][4],dsz[100000];
for(a=0;a<100000;a++){dsz[a]=0;}
scanf("%d",&n);
for(a=0;a<n;a++){
    for(b=0;b<2;b++){
      scanf("%d",&sz[a][b]);}}
for(a=0;a<n;a++){
    sz[a][2]=2*sz[a][0];sz[a][3]=2*sz[a][1];
    for(k=sz[a][2];k<=sz[a][3];k++){dsz[k]=1;}}
c=sz[0][2];
d=sz[0][3];
for(a=1;a<n;a++){
       if(sz[a][2]<c){c=sz[a][2];}
       if(sz[a][3]>d){d=sz[a][3];}}
e=d-c+1;
for(k=0;k<100000;k++){if(dsz[k]==1){f++;}}
if(e==f){printf("%d %d",c/2,d/2);}
if(e!=f){printf("no");}
return 0;
}
int main(){
    int n,i,k,e,q;
    int a[w],b[w];
    scanf("%d",&n);
    for(i=0;i<n;i++){
        scanf("%d%d",&a[i],&b[i]);
    }for(k=1;k<n;k++){
        for(i=0;i<n-k;i++){
         if(a[i]>a[i+1]){
         e=a[i];
         a[i]=a[i+1];
         a[i+1]=e;
         e=b[i];
        b[i]=b[i+1];
        b[i+1]=e;
         }   
        }
    }q=0;
    for(i=0;i<n-1;i++){
     if(b[i]<a[i+1]){
     q=1;
     break;
     }else{
     if(b[i]>b[i+1]&&(i!=n-1)){
         e=b[i];
         b[i]=b[i+1];
         b[i+1]=e;
     }
     }   
    }
   
        
    
   if(q==1){printf("no");
   }else{printf("%d %d",a[0],b[n-1]);}
return 0;
}
int main()
{
	int left[100],right[100],n,i,j,t,k,l,r[100];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d %d",&left[i],&right[i]);
	}
	for(i=1;i<=n;i++)
	{
		for(j=0;j<n-i;j++)
		{
			if(left[j]>left[j+1])
			{
				t=left[j];
				left[j]=left[j+1];
				left[j+1]=t;
			}
			if(right[j]>right[j+1])
			{
				t=right[j];
				right[j]=right[j+1];
				right[j+1]=t;
			}
		}
	}
	
	k=0;
	for(i=0;i<n-1;i++)
	{
		if(right[i]<left[i+1])
		{
			printf("no\n");
			break;
		}
		else
		{
			k++;
		}
	}
	l=0;
	for(i=n;i>=0;i--)
	{
		r[l++]=right[i];
	}

	if(k==n-1)
		printf("%d %d\n",left[0],r[1]);
	return 0;
}
int main(){
	struct point{
		int a,b;
	}p[50000];

	int i,k,n,l,r;
	double j;

	scanf("%d",&n);
	
	for(i=0;i<n;i++){
		scanf("%d%d",&p[i].a,&p[i].b);
	}
	l=p[0].a;
	r=p[0].b;


	for(i=1;i<n;i++){
		if(p[i].a<l){
			l=p[i].a;
		}
		if(p[i].b>r){
			r=p[i].b;
		}
	}

	for(j=l+0.5;j<r;j++){
		k=0;
		for(i=0;i<n;i++){
			if(j<p[i].a||j>p[i].b){
				k++;
			}
		}
		if(k==n){
			printf("no");
			break;
		}
	}
	if(j==r+0.5){
		printf("%d %d",l,r);
	}





	return 0;
}
int main(){
	int n,a[50000][2],i,j,x,y;
	double b;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<2;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	x=a[0][0];
	y=a[0][0];
	for(i=0;i<n;i++)
	{
		for(j=0;j<2;j++)
		{
			if(a[i][j]<x)
			{
				x=a[i][j];
			}
			if(a[i][j]>y)
			{
				y=a[i][j];
			}
		}
	}
	b=1.0*x+0.5;
	int s=0,z=0;
	for(i=x;i<y;i++)
	{
		for(j=0;j<n;j++)
		{
			if(b>1.0*a[j][0]&&b<1.0*a[j][1])
			{
				s=s+1;
			}
			
		}
		b=b+1;
		if(s==0)
		{
			z=z+1;
		}
		s=0;
	}
	
	if(z==0)
	{
		printf("%d %d\n",x,y);
	}
	else
	{
		printf("no\n");
	}

	return 0;
}
struct X{
int a;
int b;
};
int main()
{
int i,j,n,A,B,x[10000]={0,0,0};
struct X q[50000];
scanf("%d",&n);

for(i=0;i<n;i++)
scanf("%d%d",&q[i].a,&q[i].b);

for(i=0;i<n;i++)
{
for(j=q[i].a;j<q[i].b;j++)
x[j]=1;
}

for(A=0;x[A]!=1;A++);
for(B=10000;x[B]!=1;B--);

for(i=A;i<B;i++)
{
if(x[i]==0)
{
printf("no");
return 0;
}
}

printf("%d %d",A,B+1);
return 0;}
int main()
{
	int a[5000][2],n,i,j,t1,t2;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<2;j++){
			scanf("%d",&a[i][j]);
		}
	}
	for(j=1;j<=n;j++){
		for(i=0;i<n-j;i++){
			if(a[i][0]>a[i+1][0]){
				t1=a[i+1][0];
				a[i+1][0]=a[i][0];
				a[i][0]=t1;
				t2=a[i+1][1];
				a[i+1][1]=a[i][1];
				a[i][1]=t2;
			}
		}
	}
	int b=a[0][1];
	for(i=0;i<n-1;i++){
		if(b<a[i+1][0]){
			printf("no");
			return 0;
		}else{
			if(b<a[i+1][1]){
				b=a[i+1][1];
			}
		}
	}
	printf("%d %d",a[0][0],b);
	return 0;
}
int a[100000][2],b[100000]={0};
int c=0,f=0,e=0,i=0,m=0,t=0,n=0;
int main(){

    scanf("%d",&e);
    for(i=0;i<e;i++){
            scanf("%d %d",&a[i][0],&a[i][1]);
    }

    for(i=0;i<e;i++){
         for(m=a[i][0];m<a[i][1];m++){
                   b[2*m]=1;

                   b[2*m+1]=1;

         }
         b[2*m]=1;

    }
    for(i=1;i<=100000;i++){
         if(b[i]==1)t=i;
    }
    for(i=100000;i>0;i--){
         if(b[i]==1){
            n=i;
         }
    }
    f=0;

    for(i=n;i<=t;i++){
         if(b[i]==0) f=1;

    }
    if(f==1){printf("no");}
    else{printf("%d %d",n/2,t/2);}

return 0;
}
int main(){
	int n,i,k,e,l;
	int ai[50000];
	int bi[50000];

	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d %d",&(ai[i]),&(bi[i]));
	}

	for(i=0;i<n-1;i++){
		for(k=0;k<n-i-1;k++){
			if(ai[k]>ai[k+1]){
				e=ai[k+1];
				ai[k+1]=ai[k];
				ai[k]=e;

				e=bi[k+1];
				bi[k+1]=bi[k];
				bi[k]=e;
			}
		}
	}
	i=0;l=0;
	while(i<n-1){
		for(k=l+1;k<n;k++){
			if(bi[i]<=bi[k]){
				break;
			}
		}
	
		if(bi[i]<ai[k]){
			printf("no");
			break;
		}
		l=k;
		i=l;
		if(bi[i]>bi[n-1]){
			printf("%d %d",ai[0],bi[i]);
		}
		else if(i==n-1){
			printf("%d %d",ai[0],bi[n-1]);
		}
	}
return 0;
}
int main()
{
 int a[10001],b[10001],i,j,n,z=0,x,y=0,ma,mb,c;
 scanf("%d",&n);
 for(i=0;i<n;i++)
 {
  scanf("%d%d",&a[i],&b[i]);
 }
 ma=a[0];
 mb=b[0];
 for(i=1;i<n;i++)
 {
  if(a[i]<ma)
   ma=a[i];
  if(b[i]>mb)
   mb=b[i];
 }
 c=mb-ma;
// printf("%d\n",c);
 
 for(x=ma;x<=mb;x++)
 {
  for(j=0;j<n;j++)
  {
  z=1;
   if(x+0.5<=b[j] && x+0.5>=a[j])
   break;
   else z=0;
  }
  y=y+z;
 }
// printf("%d\n",y);
 
 if(y==c)
  {
  printf("%d %d",ma,mb);
  }
 else
 {
  printf("no");
 } 
 
 scanf(" ") ;
 return 0;
}
int main(){
	int a[50000];
	int b[50000];
    int n,i,j,e,f,l,x,y;
    scanf("%d",&n);
    for(j=0;j<n;j++)
	{
      scanf("%d %d",&(a[j]),&(b[j]));
     }
    for(i=0;i<(n-1);i++)
	{
		for(j=0;j<n-i-1;j++)
		{
			if(a[j]>a[j+1])
			{
				e=a[j+1];
                a[j+1]=a[j];
                a[j]=e;
				f=b[j+1];
				b[j+1]=b[j];
				b[j]=f;
            }
        }
    }
x=a[0];
y=b[0];
for(i=0;i<n-1;i++)
{
	if (a[i+1]<=y)
	{
	if(y<b[i+1])
	{y=b[i+1];}
	}
	else
	{break;}
}
if(i<n-1)
{printf("no\n");}
else if(i==n-1)
{printf("%d %d\n",x,y);}
return 0;
}
int main(){
	int n, i, p, q, j, a[10000]={0}, l=1, s=50000, m=1;
	scanf("%d", &n);
	for(i=1;i<=n;i++){
		scanf("%d %d", &p, &q);
		for(j=p;j<q;j++){
			a[j]=1;
			if(p<s){
				s=p;
			}
			if(q>l){
				l=q;
			}
		}
	}
	a[s]=1;
	a[l]=1;
	for(i=s;i<=l;i++){
		if(a[i]==0){
			m=0;
			printf("no");
			break ;
		}
	}
	if(m==1){
		printf("%d %d", s, l);
	}
	return 0;
}
int a[50000];
int b[50000];
int c[100000];
int d[100000];
int z[20000];
int main(){
   int n,i,k,p=0,q=0,m=0,u=0,y=0,max=0,min=0;
   scanf("%d",&n);
   for(i=0;i<n;i++){
      scanf("%d %d",&a[i],&b[i]);
      c[i]=2*a[i];
      d[i]=2*b[i];
   }
   max=c[0];
   min=c[0];
   for(i=0;i<n;i++){
      if(c[i]>max){
        max=c[i];}
      if(c[i]<min){
        min=c[i];
      }
   }
   for(i=0;i<n;i++){
      if(d[i]>max){
        max=d[i];
      }
      if(d[i]<min){
        min=d[i];}
   }
   for(k=0;k<20000;k++){
      z[k]=0;
   }
   for(i=0;i<n;i++){
      p=c[i];
      q=d[i];
      for(k=p;k<=q;k++){z[k]=1;}
   }
   for(i=0;i<20000;i++){
     if(z[i]==1){u=i;break;}
   }
   for(i=0;i<20000;i++){
    if(z[i]==1){y++;}
   }
   for(i=u;i<20000;i++){
      
      if(z[i]==0){break;}
      if(z[i]==1){m++;}
   }
   if(m==y){printf("%d %d",min/2,max/2);}
   if(m!=y){printf("no");}
 return 0;  
}
int main()
{
	struct qujian
	{
		int a;
		int b;
	}qj[50000],temp;
	int i,n,j,max;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d%d",&qj[i].a,&qj[i].b);
	}
	for(i=n-1;i>0;i--){
		for(j=0;j<i;j++){
			if(qj[j].a>qj[j+1].a){
				temp=qj[j];
				qj[j]=qj[j+1];
				qj[j+1]=temp;
			}
		}
	}
	max=qj[0].b;
	for(i=0;i<n-1;i++){
		if(qj[i].b>max){
			max=qj[i].b;
		}
		if(max<qj[i+1].a){
			printf("no");
			break;
		}
	}
	if(qj[n-1].b>max){
		max=qj[n-1].b;
	}
	if(i==n-1){
		printf("%d %d",qj[0].a,max);
	}
	return 0;
}
int main(){
	int n;
	scanf("%d",&n);
	int qujian[50000][2];
	int row;
	for(row=0;row<n;row++){
			scanf("%d%d",&qujian[row][0],&qujian[row][1]);
	}
	
	int i,zuo,you;
	for(i=1;i<n;i++){
		for(row=0;row<n-i;row++){
			if(qujian[row][0]>qujian[row+1][0]){
				zuo=qujian[row+1][0];
				you=qujian[row+1][1];
				qujian[row+1][0]=qujian[row][0];
				qujian[row+1][1]=qujian[row][1];
				qujian[row][0]=zuo;
				qujian[row][1]=you;
			}
		}
	}

	int jieguo=0,p;
	for(row=1;row<n;row++){
		for(p=0;p<row;p++){
			if(qujian[p][1]>=qujian[row][0]){
				jieguo++;break;
		}
	}
	}
	
	int j,e;
	for(j=1;j<n;j++){
		for(row=0;row<n-j;row++){
			if(qujian[row][1]>qujian[row+1][1]){
				e=qujian[row+1][1];
				qujian[row+1][1]=qujian[row][1];
				qujian[row][1]=e;
			}
		}
	}

	if(jieguo==n-1){
		printf("%d %d",qujian[0][0],qujian[n-1][1]);
	}
	else{
		printf("no");
	}
	return 0;
}
int main()
{
int x[100],y[100],n,i,j,a,b,c,d,p;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d %d",&x[i],&y[i]);}
for(i=n-1;i>=0;i--){
for(j=0;j<i;j++){
if(x[j]>x[j+1]){
a=x[j+1];
x[j+1]=x[j];
x[j]=a;}
if(y[j]>y[j+1]){
b=y[j+1];
y[j+1]=y[j];
y[j]=b;}}}
c=x[0];
d=y[n-1];
for(double k=c;k<=d;k+=0.1){
p=0;
for(i=0;i<n;i++){
if(k>=x[i]&&k<=y[i])
p++;}
if(p==0){
printf("no");
return 0;}
}
printf("%d %d",c,d);
return 0;
}
int main()
{
	int n,a[50000],b[50000],i,k,e,j,m=0,h=0;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d %d",&a[i],&b[i]);
	}
	for(k=1;k<=n;k++){
		for(i=0;i<n-k;i++){
			if(b[i]>b[i+1]){
				e=b[i+1];
				b[i+1]=b[i];
				b[i]=e;
				e=a[i+1];
				a[i+1]=a[i];
				a[i]=e;
			}else if(b[i]==b[i+1]){
				if(a[i]>a[i+1]){
					e=a[i+1];
					a[i+1]=a[i];
					a[i]=e;
				}
			}
		}
	}
	for(i=0;i<n-1;i++){
		for(j=i+1;j<n;j++){
			if(!(b[i]>=a[j])){
				m++;
			}
			if(m==n-1-i){
				printf("no");
				h=1;
			}
			if(j==n-1){
				m=0;
			}
		}
		if(i==n-2&&h!=1){
			printf("%d %d",a[0],b[n-1]);
		}
	}
	return 0;
}
int main()
{
  // for every point i, point[2i] stands for [i,i], point[2i+1] stands for (i,i+1)
  // if point[i] == 1, it stands that this interval is included
  int n, point[2001];
  scanf("%d", &n);
  int i;
  int left = 2001;
  int right = 0;
  for (i = 1 * 2; i <= 1000 * 2; i++)
    point[i] = 0;
  for (i = 1; i <= n; i++)
    {
      int a, b;
      scanf("%d%d", &a, &b);
      if (a < left)
	left = a; // find the leftest point
      if (b > right)
	right = b; // find the rightest point
      int j;
      for (j = a * 2; j <= b * 2; j++)
	point[j] = 1;
    }
  int in = 0; // if in an interval, then value is 1, or the value is 0
  int num = 0; // number of interval(s)
  for (i = 1 * 2; i <= 1000 * 2; i++)
    if (point[i] == 1)
      {
	if (in == 0)
	  {
	    in = 1;
	    num++;
	  }
      }
    else 
      if (in == 1)
	in = 0;
  if (num == 1)
    printf("%d %d\n", left, right);
  else
    printf("no\n");

  return 0;
}
int main(){
    int n,a[50000],b[50000],i,r,y;
    y=0;
    scanf("%d",&n);
    for(i=0;i<n;i++){
                     scanf("%d %d",&a[i],&b[i]);
                     }
    for(i=1;i<n;i++){
                     for(r=0;r<n-i;r++){
                                        if(a[r]>a[r+1]){
                                                        int x;
                                                        x=a[r+1];
                                                        a[r+1]=a[r];
                                                        a[r]=x;
                                                        x=b[r+1];
                                                        b[r+1]=b[r];
                                                        b[r]=x;
                                                        }
                                                        }
                                                        }
    for(i=0;i<n;i++){
                     if(b[i]<a[i+1]){
                                     y=1;
                                     break;
                                     }
                     else{
                          a[i+1]=a[i];
                          if(b[i]>b[i+1]){
                                          b[i+1]=b[i];
                                          }
                          }
                          }
    if(y==1){
             printf("no");
             }
    if(y==0){
             printf("%d %d",a[n],b[n]);
             }
    return 0;
}
int main()
{
    int n;
    int i,j;
    struct
    {
        int a,b;
    } q[5000],c;
    int star,end,e;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d%d",&q[i].a,&q[i].b);
    }
    for(i=1;i<n;i++)
    {
        for(j=0;j<n-i;j++)
        {
            if(q[j].a>q[j+1].a)
            {
                c=q[j];
                q[j]=q[j+1];
                q[j+1]=c;
            }
        }
    }
    star=q[0].a;
    end=q[0].b;
    for(i=1;i<n;i++)
    {
        if(end<q[i].a)
        {
            e=0;
            break;
        }
        else 
        {
            e=1;
            if(end<q[i].b)
        {
            end=q[i].b;
        }
        }
    }
    if(e==0)
    printf("no");
    if(e==1)
    printf("%d %d",star,end);
    return 0;
}