PersonalCorpus 版 (精华区)

40722 2002-10-11 14:49:41 Accepted
1139 C++ 00:02.07 616K Big Guava


int cmpi(const void *a, const void *b)
{
    if (*(int *)a>*(int *)b) return 1;
    else if (*(int *)a==*(int *)b) return 0;
    else return -1;
}

int main()
{
#ifndef ONLINE_JUDGE
    freopen("c:\\0acm\\zju\\i1139","r",stdin);
    freopen("c:\\0acm\\zju\\o1139","w",stdout);
#endif

    int i,j,k,n;

    int p[10000][4];
    bool ok;

    while (scanf("%d\n",&n)==1) {
        for (i=0;i<n;i++) scanf("%d%d%d%d",&p[i][0],&p[i][1],&p[i][2],
&p[i][3]);
        qsort(p,n,16,cmpi);
        k=0;
        for (i=0;i<n;i++) {
            ok=false;
            for (j=0;j<i;j++) if (p[i][1]<=p[j][1])
                if ((p[j][2]<=p[i][2])&&(p[j][3]>=p[i][3])) {
                    k++; ok=true;
                    break;
                }
            if (ok) continue;
            for (j=i+1;(j<n)&&(p[i][0]==p[j][0]);j++) if 
(p[i][1]<=p[j][1])
                if ((p[j][2]<=p[i][2])&&(p[j][3]>=p[i][3])) {
                    k++;
                    break;
                }
        }
        printf("%d\n",k);
    }
}
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.234毫秒