• ccf-201809-2


    问题描述

    试题编号: 201809-2
    试题名称: 买菜
    时间限制: 1.0s
    内存限制: 256.0MB
    问题描述:
    问题描述
      小H和小W来到了一条街上,两人分开买菜,他们买菜的过程可以描述为,去店里买一些菜然后去旁边的一个广场把菜装上车,两人都要买n种菜,所以也都要装n次车。具体的,对于小H来说有n个不相交的时间段[a1,b1],[a2,b2]...[an,bn]在装车,对于小W来说有n个不相交的时间段[c1,d1],[c2,d2]...[cn,dn]在装车。其中,一个时间段[s, t]表示的是从时刻s到时刻t这段时间,时长为t-s。
      由于他们是好朋友,他们都在广场上装车的时候会聊天,他们想知道他们可以聊多长时间。
    输入格式
      输入的第一行包含一个正整数n,表示时间段的数量。
      接下来n行每行两个数ai,bi,描述小H的各个装车的时间段。
      接下来n行每行两个数ci,di,描述小W的各个装车的时间段。
    输出格式
      输出一行,一个正整数,表示两人可以聊多长时间。
    样例输入
    4
    1 3
    5 6
    9 13
    14 15
    2 4
    5 7
    10 11
    13 14
    样例输出
    3
    数据规模和约定
      对于所有的评测用例,1 ≤ n ≤ 2000, a< b< ai+1,c< d< ci+1,对于所有的i(1 ≤ i ≤ n)有,1 ≤ ai, bi, ci, di ≤ 1000000。
     
     
     
    我发现ccf一般第一题考的是语法基础,第二题考的是逻辑
    这个第二题考的是你的思维,如果你的解法没问题,一般代码不是很难
     
    本题,我第一次交的时候是10分,后来读题发现我的题目意思理解错了,本题就是要求两个n组时间段的相交区间,利用maxx记录末端点的时间,然后相比较,看两个时间段是否相交,而我这边判断相交是根据时长来判断的,若maxx-minn的时长小于甲段时长加乙段时长,则两端时长有相交
     
    代码如下:
    int main()
    {
        int a[2005],b[2005],c[2005],d[2005];
        int n;
        long long time=0;
        scanf("%d",&n);
        for(int i=0;i<n;i++)
        {
            scanf("%d %d",&a[i],&b[i]);
        }
        for(int i=0;i<n;i++)
        {
            scanf("%d %d",&c[i],&d[i]);
        }
        int maxx,minn;
        for(int i=0,j=0;i<n&&j<n;)
        {
            int time1=b[i]-a[i];
            int time2=d[j]-c[j];
            maxx=max(b[i],d[j]);
            minn=min(a[i],c[j]);
            if(time1+time2>maxx-minn)
                time=time1+time2-(maxx-minn)+time;
            if(d[j]>b[i])     i++;
            else    j++;
        }
        printf("%lld
    ",time);
        return 0;
    }
    

      

  • 相关阅读:
    iOS打包Framework真机和模拟器兼容合并版本
    iOS同一项目多个Target的快速实现方法
    Android横屏下Fragment界面重叠问题
    项目实战工具类(一):PhoneUtil(手机信息相关)
    浅谈FloatingActionButton(悬浮按钮)
    LeanCloud数据存储相关问题
    Android项目实战(二十三):仿QQ设置App全局字体大小
    Android项目实战(二十二):启动另一个APP or 重启本APP
    Android项目实战(二十):浅谈ListView悬浮头部展现效果
    浅谈DrawerLayout(抽屉效果)
  • 原文地址:https://www.cnblogs.com/muziqiu/p/10422989.html
Copyright © 2020-2023  润新知