SGU133-Border (Sort)

来源:互联网 发布:制造业数据分析 2016 编辑:程序博客网 时间:2024/06/03 23:38

133. Border

time limit per test: 0.5 sec.
memory limit per test: 4096 KB

Along the border between states A and B there are N defence outposts. For every outpost k, the interval [Ak,Bk] which is guarded by it is known. Because of financial reasons, the president of countryA decided that some of the outposts should be abandoned. In fact, all the redundant outposts will be abandoned. An outposti is redundant if there exists some outpost j such thatAj<Ai and Bi<Bj. Your task is to find the number of redundant outposts.

Input

The first line of the input will contain the integer number N (1<=N<=16 000). N lines will follow, each of them containing2 integers: Ak and Bk (0<= Ak < Bk <= 2 000 000 000), separated by blanks. All the numbersAk will be different. All the numbers Bk will be different.

Output

You should print the number of redundant outposts.

Sample Input

50 102 93 81 156 11

Sample Output

3



 

 

简单排序。

 

#include<iostream>#include<string.h>#include<stdio.h>#include<ctype.h>#include<algorithm>#include<stack>#include<queue>#include<set>#include<math.h>#include<vector>#include<map>#include<deque>#include<list>using namespace std;struct N{    int m;    int n;} p[99999];int cmp(N a,N b){    return a.m<b.m;}int main(){    int t;////    while(scanf("%d",&t))!=EOF)////    {        scanf("%d",&t);        for(int i=0; i<t; i++)            scanf("%d%d",&p[i].m,&p[i].n);        sort(p,p+t,cmp);        int max=-33;        int w;        int count=0;        for(int i=0; i<t; i++)        {            if(p[i].n>max)                max=p[i].n;            else                count++;        }        printf("%d\n",count);//    }    return 0;}


 

 

 

原创粉丝点击