On Segment's Own Points(模拟)

A. On Segment's Own Points
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Our old friend Alexey has finally entered the University of City N — the Berland capital. Alexey expected his father to get him a place to live in but his father said it was high time for Alexey to practice some financial independence. So, Alexey is living in a dorm.

The dorm has exactly one straight dryer — a 100 centimeter long rope to hang clothes on. The dryer has got a coordinate system installed: the leftmost end of the dryer has coordinate 0, and the opposite end has coordinate 100. Overall, the university has nstudents. Dean's office allows i-th student to use the segment (li, ri) of the dryer. However, the dean's office actions are contradictory and now one part of the dryer can belong to multiple students!

Alexey don't like when someone touch his clothes. That's why he want make it impossible to someone clothes touch his ones. So Alexey wonders: what is the total length of the parts of the dryer that he may use in a such way that clothes of the others (n - 1) students aren't drying there. Help him! Note that Alexey, as the most respected student, has number 1.

Input

The first line contains a positive integer n (1 ≤ n ≤ 100). The (i + 1)-th line contains integers li and ri (0 ≤ li < ri ≤ 100) — the endpoints of the corresponding segment for the i-th student.

Output

On a single line print a single number k, equal to the sum of lengths of the parts of the dryer which are inside Alexey's segment and are outside all other segments.

Sample test(s)
input
3
0 5
2 8
1 6
output
1
input
3
0 10
1 5
7 15
output
3
Note

Note that it's not important are clothes drying on the touching segments (e.g. (0, 1) and (1, 2)) considered to be touching or not because you need to find the length of segments.

In the first test sample Alexey may use the only segment (0, 1). In such case his clothes will not touch clothes on the segments (1, 6)and (2, 8). The length of segment (0, 1) is 1.

In the second test sample Alexey may dry his clothes on segments (0, 1) and (5, 7). Overall length of these segments is 3.

 

    题意:

    给出N(1 ~ 100),后给出 N 条线段,以第一条线段为标准,问不被以下 N - 1 条线段覆盖的长度为多少。

 

    思路:

    num 数组标记每段的覆盖次数,最后数第一段覆盖次数仅为 1 的有多少即可,注意区间要左开右闭。

 

    AC:

#include<stdio.h>
#include<string.h>
int num[105];
int main()
{
    int n,x,y;
    scanf("%d",&n);
    memset(num,0,sizeof(num));
    for(int i = 1;i <= n;i++)
    {
        int l,r;
        scanf("%d%d",&l,&r);
        for(int j = l + 1;j <= r;j++)
            num[j]++;
        if(i == 1)
        {
            x = l;
            y = r;
        }
    }
    int sum = 0;
    for(int i = x + 1;i <= y;i++)
    {
        if(num[i] == 1) sum++;
    }
    printf("%d\n",sum);
    return 0;
}

 

 

你可能感兴趣的:(poi)