最高的奶牛

2021-08-17 03:41:11 字數 998 閱讀 3043

description

fj有n(1 <= n <= 10,000)頭奶牛,編號為1到n,站成一條直線。每頭奶牛自己的身高(正整數,秘密未知),告訴你最高奶牛的身高h及位置i,同時告訴你r(0 <= r <= 10,000)組資訊,每組資訊由兩個數ai,bi組成,表示奶牛ai可以看到奶牛bi,這就意味著奶牛bi的身高至少和奶牛ai的身高一樣高,同時奶牛ai到奶牛bi之間的奶牛身高必須低於奶牛ai

現在要你求出每頭奶牛最高可能的高度,保證有解。

input

第1行輸入4個空格隔開的整數n,i,h,r

第2到r+1行,每行兩個空格隔開的不同的整數a,b(1<=a,b<=n),表示奶牛a能看到奶牛b

output

第1到n行,每行乙個整數表示每只奶牛最高可能的高度。

sample input

9 3 5 5

1 3

5 3

4 3

3 7

9 8sample output

5 4

5 3

4 4

5 5

5data constraint

hint

解釋:如果奶牛a和奶牛b一樣高,則可以出現a看到b,b又看到a的情況,如果奶牛a矮於奶牛b,則只可能出現奶牛a看到奶牛b,奶牛b不可能看到奶牛a。

. .

. . .分析

一開始全部高度是最高高度,每輸入a看見b,那麼如果a和b之間所有奶牛有一頭比a高,那麼a與b之間所有奶牛全部減1。

. .

. .

.程式:

#include

using

namespace

std;

int main()

for (int j=x+1;j<=y-1;j++)

if (s[j]>=s[p])

}for (int i=1;i<=n;i++)

cout

0;}

奶牛的鍛鍊

這題有一點比較猥瑣,就是一休息就要休息到疲勞值為0 奶牛果然沒有人類勤奮啊 辣麼如果不讓奶牛休息,這題是不是好解的多呢?任何乙個蒟蒻都可以看出,f i j f i 1 j 1 d i 現在加入了休息也很好辦,一休息就去替換f 0 而不參加迴圈部分的運算,這樣可以減去一些負擔。於是我們可以寫出偽 f ...

奶牛的編號

題目 題目描述 有n 1 n 1000 頭奶牛,它們都被標上乙個優先等級編號 1,2或3。用來表示它們喝水時的優先次序,編號為l的最優先,編號為2的其次,編號為3的最後。每天奶牛開始時排成一行,但總是很亂,需要你把它們重新排成編號為1的奶牛在最前面,編號為2的其次,編號為3的奶牛在最後。你能計算出最...

遊蕩的奶牛

fj 有 n 1 n 50,000 頭牛,fj的草地可以認為是一條直線。每只牛只喜歡在某個特定的範圍內吃草。第i頭牛喜歡在區間 s i,e i 吃草,1 s i e i s i e i 100,000,000 下面的樣例有5頭奶牛 這5頭奶牛的範圍分別是 2,4 1,12 4,5 7,10 7,8 ...