nyoj 找點 非洲小孩

2021-08-17 12:34:48 字數 1405 閱讀 6517

最近在做貪心,先從nyoj上簡單經典的題目開始,因此做到了這兩道題目:

題目描述:

時間限制:

2000 ms  |  記憶體限制:

65535 kb 

難度:2描述 

上數學課時,老師給了

lyh一些閉區間,讓他取盡量少的點,使得每個閉區間內至少有乙個點。但是這幾天

lyh太忙了,你們幫幫他嗎? 輸入

多組測試資料。

每組資料先輸入乙個n,表示有n個閉區間(n≤100)。

接下來n行,每行輸入兩個數a,b(0≤a≤b≤100),表示區間的兩個端點。

輸出輸出乙個整數,表示最少需要找幾個點。

主要找找感覺,貪心最重要的是確定貪心準則,一上來我按照了區間左端點來排序,結果想了很長時間沒想出來,後來嘗試了右端點公升序排列就完成了:

#include#includeusing namespace std;

struct node;

int cmp(const node&a,const node&b)

cout《接下來我又點開了非洲小孩,題目描述:

時間限制:

1000 ms  |  記憶體限制:

65535 kb 

難度:2描述 

家住非洲的小孩,都很黑。為什麼呢?

第一,他們地處熱帶,太陽輻射嚴重。

第二,他們不經常洗澡。(常年缺水,怎麼洗澡。)

現在,在乙個非洲部落裡,他們只有乙個地方洗澡,並且,洗澡時間很短,瞬間有木有!!(這也是沒有的辦法,缺水啊!!)

每個小孩有乙個時間段能夠洗澡。並且,他們是可以一起洗的(不管你是男孩是女孩)。

那麼,什麼時間洗澡,誰應該來洗,由誰決定的呢?那必然是他們偉大的「澡」神啊。「澡」神有乙個時間表,記錄著該部落的小孩,什麼時候段可以洗澡。現在,「澡」神要問你,一天內,他需要最少開啟和關閉多少次洗澡的水龍頭呢?因為,開啟和關閉一次水龍頭是非常的費力氣的,即便,這也是瞬間完成的。

輸入多組資料

第一行乙個0

輸出題目描述,「澡」神最少需要開啟和關閉多少次水龍頭呢?

分析題目不難發現就是找點問題的變形,要多乙個將時間轉換成為數的操作,最坑的是其中的區間可能左端點比右端點大。

#include#include#includeusing namespace std;

struct node;

int cmp(const node&a,const node&b)else

}sort(p,p+n,cmp);

int cnt=1;

for(int i=1;ip[i-1].y)

cnt++;

else

p[i].y=min(p[i].y,p[i-1].y);

}cout<}

return 0;

}

NYOJ 非洲小孩

家住非洲的小孩,都很黑。為什麼呢?第一,他們地處熱帶,太陽輻射嚴重。第二,他們不經常洗澡。常年缺水,怎麼洗澡。現在,在乙個非洲部落裡,他們只有乙個地方洗澡,並且,洗澡時間很短,瞬間有木有!這也是沒有的辦法,缺水啊!每個小孩有乙個時間段能夠洗澡。並且,他們是可以一起洗的 不管你是男孩是女孩 那麼,什麼...

NYOJ 非洲小孩 貪心

家住非洲的小孩,都很黑。為什麼呢?第一,他們地處熱帶,太陽輻射嚴重。第二,他們不經常洗澡。常年缺水,怎麼洗澡。現在,在乙個非洲部落裡,他們只有乙個地方洗澡,並且,洗澡時間很短,瞬間有木有!這也是沒有的辦法,缺水啊!每個小孩有乙個時間段能夠洗澡。並且,他們是可以一起洗的 不管你是男孩是女孩 那麼,什麼...

NYOJ1036 非洲小孩

時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 家住非洲的小孩,都很黑。為什麼呢?第一,他們地處熱帶,太陽輻射嚴重。第二,他們不經常洗澡。常年缺水,怎麼洗澡。現在,在乙個非洲部落裡,他們只有乙個地方洗澡,並且,洗澡時間很短,瞬間有木有!這也是沒有的辦法,缺水啊!每個小孩有乙個...