[ABC261A] Intersection

Problem Statement

We have a number line. Takahashi painted some parts of this line, as follows:

  • First, he painted the part from $X=L_1$ to $X=R_1$ red.
  • Next, he painted the part from $X=L_2$ to $X=R_2$ blue.

Find the length of the part of the line painted both red and blue.

Constraints

  • $0\leq L_1<R_1\leq 100$
  • $0\leq L_2<R_2\leq 100$
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

$L_1$ $R_1$ $L_2$ $R_2$

Output

Print the length of the part of the line painted both red and blue, as an integer.


Sample Input 1

0 3 1 5

Sample Output 1

2

The part from $X=0$ to $X=3$ is painted red, and the part from $X=1$ to $X=5$ is painted blue.

Thus, the part from $X=1$ to $X=3$ is painted both red and blue, and its length is $2$.


Sample Input 2

0 1 4 5

Sample Output 2

0

No part is painted both red and blue.


Sample Input 3

0 3 3 7

Sample Output 3

0

其实求出来的区间就是 \([\max(L_1,L_2),\min(R_1,R_2)]\)
特判区间为空,输出区间长度。

#include<bits/stdc++.h>
using namespace std;
int l1,r1,l2,r2;
int main()
{
	scanf("%d%d",&l1,&r1);
	scanf("%d%d",&l2,&r2);
	if(max(l1,l2)>min(r1,r2))
		printf("0");
	else
		printf("%d",min(r1,r2)-max(l1,l2));
}
posted @ 2022-09-04 21:20  灰鲭鲨  阅读(149)  评论(0编辑  收藏  举报