ACM日常訓練 Milking Cows 擠牛奶

2021-09-26 23:05:41 字數 1264 閱讀 5623

description

三個農民每天清晨5點起床,然後去牛棚給3頭牛**。第乙個農民在300時刻(從5點開始計時,秒為單位)給他的牛**,一直到1000時刻。第二個農民在700時刻開始,在 1200時刻結束。第三個農民在1500時刻開始2100時刻結束。期間最長的至少有乙個農民在**的連續時間為900秒(從300時刻到1200時刻),而最長的無人**的連續時間(從**開始一直到**結束)為300時刻(從1200時刻到1500時刻)。 你的任務是編乙個程式,讀入乙個有n個農民(1 <= n <= 5000)擠n頭牛的工作時間列表,計算以下兩點(均以秒為單位): 最長至少有一人在**的時間段。 最長的無人**的時間段。(從有人**開始算起)

input

line 1: 乙個整數n。 lines 2…n+1: 每行兩個小於1000000的非負整數,表示乙個農民的開始時刻與結束時刻。

output

一行,兩個整數,即題目所要求的兩個答案。

sample input

3300 1000

700 1200

1500 2100

sample output

900 300

#include

#include

#include

#include

#define mem(a,b) memset(a,b,sizeof(a))

using namespace std;

typedef

long

long ll;

const

int maxn=

1e5;

const ll _inf =

-8e18

;//const int n = 1e5 + 10;

intcmp

(int a,

int b)

intmain()

for(

int i=

1; i<=n; i++

) anybody[i]

=begin[i]

-end[i-1]

;sort

(someone,someone+n+

1,cmp)

;sort

(anybody,anybody+n+

1,cmp);if

(anybody[n]

<0)

anybody[n]=0

; cout<<<

" "<

}

日常訓練 壓縮

巨大的文字往往令人頭疼,特別是文字內容有大量重複的情況下,巨大的文字不便於運輸和閱讀,於是我們提出了noip nonsense obivous index pattern 荒謬的顯然索引法 一種 有效的 壓縮文字的方法。noip壓縮後的格式很特別,乙個文字壓縮後由若干個單元組成,每個單元由3部分組成...

日常訓練 Tree

j 對於h u j 時間複雜度的證明也是比較經典了,每次列舉的是sz eu s zev 相當於每次從a,b 中各任選一點,它們的lc a 為 u 這樣的點對列舉不會重複,因此總的時間複雜度為o n2 include include include include include using name...

日常訓練 mod

給定 p 1,p 2,p n,b 1,b 2,b m 求滿足 x mod p 1 equiv a 1,x mod p 2 equiv a 2,x mod p n equiv a n 的 x 對 b 1,b 2,b m 取模的結果.第一行兩個整數 n,m 接下來 n 行,每行有乙個整數 a i 接下來...