洛谷P1204 or SSL-1088 USACO 1.2 挤牛奶

简介: 洛谷P1204 or SSL-1088 USACO 1.2 挤牛奶

题目描述

三个农民每天清晨5点起床,然后去牛棚给3头牛挤奶。第一个农民在300时刻(从5点开始计时,秒为单位)给他的牛挤奶,一直到1000时刻。第二个农民在700时刻开始,在 1200时刻结束。第三个农民在1500时刻开始2100时刻结束。期间最长的至少有一个农民在挤奶的连续时间为900秒(从300时刻到1200时刻),而最长的无人挤奶的连续时间(从挤奶开始一直到挤奶结束)为300秒(从1200时刻到1500时刻)。

你的任务是编一个程序,读入一个有N个农民(1 <= N <= 5000)挤N头牛的工作时间列表,计算以下两点(均以秒为单位):

bullet 最长至少有一人在挤奶的时间段。

bullet 最长的无人挤奶的时间段。

输入

Line 1:

一个整数N。

Lines 2…N+1:

每行两个小于1000000的非负整数,表示一个农民的开始时刻与结束时刻。

输出

一行,两个整数,即题目所要求的两个答案。

样例输入

3
300 1000
700 1200
1500 2100

样例输出

900 300

解题思路:这个题就是简单的暴力求解,把在工作的时间标记为1,然后不在工作的时间标记为0,然后求出连续的1和0的个数。

程序代码:

#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
int jmj[1000000];
int main()
{
    int i,n,j,k,m,t,ans1,ans2,f1,f2;
    while(scanf("%d",&n)!=EOF)
    {
        int l=99999999;
        int r=-1;
        memset(jmj,0,sizeof(jmj));
        for(i=1;i<=n;i++)
        {
            scanf("%d%d",&k,&t);
            r=max(r,t);
            l=min(l,k);
            for(j=k;j<t;j++)
                    jmj[j]=1;
        }
        f1=0;
        int flag=1;
        ans1=ans2=0;//要初始化定义一下**加粗样式**
        for(int i=l;i<r;i++) 
        {
            if(jmj[i]) 
            {
                f1++;
                ans1=max(ans1,f1);
                f2=0;
            }
            else
            {
                f2++;
                ans2=max(ans2,f2);
                f1=0;
            }
        }
        printf("%d %d\n",ans1,ans2);
    }
    return 0;   
} 
相关文章
|
9月前
【USACO题库】1.2.1 Milking Cows挤牛奶
【USACO题库】1.2.1 Milking Cows挤牛奶
44 0
PTA 1092 最好吃的月饼
月饼是久负盛名的中国传统糕点之一,自唐朝以来,已经发展出几百品种。
81 0
|
机器学习/深度学习 算法 搜索推荐
洛谷每日三题之第六天
洛谷每日三题之第六天
|
算法
HDU - 2063: 过山车
HDU - 2063: 过山车
112 0
|
人工智能 BI
洛谷 P3183 BZOJ 4562 [HAOI2016]食物链
题目描述 如图所示为某生态系统的食物网示意图,据图回答第1小题现在给你n个物种和m条能量流动关系,求其中的食物链条数。物种的名称为从1到n编号M条能量流动关系形如a1 b1a2 b2a3 b3......am-1 bm-1am bm其中ai bi表示能量从物种ai流向物种bi,注意单独的一种孤立生物不算一条食物链 输入输出格式 输入格式:   第一行两个整数n和m,接下来m行每行两个整数ai bi描述m条能量流动关系。
1010 0
|
机器学习/深度学习
洛谷 P2742 [USACO5.1]圈奶牛Fencing the Cows
题目描述 农夫约翰想要建造一个围栏用来围住他的奶牛,可是他资金匮乏。他建造的围栏必须包括他的奶牛喜欢吃草的所有地点。对于给出的这些地点的坐标,计算最短的能够围住这些点的围栏的长度。 输入输出格式 输入格式:   输入数据的第一行包括一个整数 N。N(0
976 0
|
算法 vr&ar 人工智能
BZOJ 2038: [2009国家集训队]小Z的袜子(hose)【莫队算法裸题&&学习笔记】
2038: [2009国家集训队]小Z的袜子(hose) Time Limit: 20 Sec  Memory Limit: 259 MBSubmit: 9894  Solved: 4561[Submit][Status][Discuss] Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。
1547 0
|
定位技术
洛谷 P2805 BZOJ 1565 植物大战僵尸
题目描述 Plants vs. Zombies(PVZ)是最近十分风靡的一款小游戏。Plants(植物)和Zombies(僵尸)是游戏的主角,其中Plants防守,而Zombies进攻。该款游戏包含多种不同的挑战系列,比如Protect Your Brain、Bowling等等。
892 0