• [编程题-蘑菇街]聊天


    [编程题] 聊天
    A和B是好友,他们经常在空闲时间聊天,A的空闲时间为[a1 ,b1 ],[a2 ,b2 ]..[ap ,bp ]。B的空闲时间是[c1 +t,d1 +t]..[cq +t,dq +t],这里t为B的起床时间。这些时间包括了边界点。B的起床时间为[l,r]的一个时刻。若一个起床时间能使两人在任意时刻聊天,那么这个时间就是合适的,问有多少个合适的起床时间?

    输入描述:
    第一行数据四个整数:p,q,l,r(1≤p,q≤50,0≤l≤r≤1000)。接下来p行数据每一行有一对整数ai,bi(0≤ai<bi≤1000)表示a的时间表,接下来p行每行一对整数ci,di(0≤ci,di≤1000)表示b的时间表。保证a
    i+1>bi,ci+1>di

    输出描述:
    输出答案个数

    输入例子:
    2 3 0 20
    15 17
    23 26
    1 4
    7 11
    15 17

    输出例子:
    20
    #include<iostream>
    #include<vector>
    #include<utility>
    using namespace std;
    bool isOverlap(vector<vector<int>>&a, vector<vector<int>>&b, int t)
    {
        for(int i=0;i<b.size();i++)
        {
            for(int j=0;j<a.size();j++)
            {
                if( (a[j][0]<=b[i][0]+t) && (b[i][0]+t<=a[j][1]))
                    return true;
                   if( (b[i][0]+t<=a[j][0]) && (a[j][0]<=b[i][1]+t))
                    return true;
            }
        }
        return false;
    }
    int main()
    {
        int p,q,l,r;
        while(cin>>p>>q>>l>>r)
        {
            vector<vector<int>> a(p,vector<int>(2,0));
            for(int i=0;i<p;i++)
            {
                int x,y;
                cin>>x>>y;
                a[i][0]=x;
                a[i][1]=y;
            }
            vector<vector<int>> b(q,vector<int>(2,0));
            for(int i=0;i<q;i++)
            {
                int x,y;
                cin>>x>>y;
                b[i][0]=x;
                b[i][1]=y;
            }
            int cnt=0;
            for(int t=l;t<=r;t++)
            {
                if(isOverlap(a,b,t))
                    cnt++;
            }
            cout<<cnt<<endl;
        }
    }
  • 相关阅读:
    2016.04.18 view中嵌套两个居中的 lable
    2016..4.06 点菜系统案例:利用文本框的inputView和inputAccessoryView串联UIPickerView、UIDateP...
    2016.04.06 UITabBar+badge.h
    2014 .04 .06 navbar
    2016-03-17 leaks 内存泄露
    2016-03-16 sdwebimage
    2016-03-16 字符串的包含
    2016-03-16 键盘的弹出与收起
    2016-03-15 nsfoundation 数组 字典 nsrange等
    2016-03-15 uitextview placehold
  • 原文地址:https://www.cnblogs.com/learning-c/p/5743689.html
Copyright © 2020-2023  润新知