P1047 校門外的樹

2022-08-12 23:36:17 字數 554 閱讀 6582

抽象出題意:數軸的\([0,l]\)本來都是1,選定一些區域要變成0,求最後這片區域還有多少1。

講道理這就是區間推平操作啊!

說到區間推平你想到了什麼?

chotholly!

所以我們可以用珂朵莉樹非常優雅地做過去。

跑得還挺快的

**:

#include#includeconst int maxn = 10005;

int n, m;

struct nodes

bool operator < (const nodes &rhs) const

};std::setchotholly;

#define it std::set::iterator

it split(int pos)

void assign(int l, int r, int x)

int sum(int l, int r)

int main()

printf("%d\n", sum(0, n));

return 0;

}

P1047 校門外的樹

某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置 數軸上的每個整數點,即0,1,2,l,都種有一棵樹。由於馬路上有一些區域要用來建地鐵。這些區域用它們在數軸上的起始點和終止點表示。已知任一區域的起始點和終止...

P1047 校門外的樹

某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置 數軸上的每個整數點,即0,1,2,l,都種有一棵樹。由於馬路上有一些區域要用來建地鐵。這些區域用它們在數軸上的起始點和終止點表示。已知任一區域的起始點和終止...

P1047 校門外的樹

題目描述 某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置 數軸上的每個整數點,即0,1,2,l,都種有一棵樹。由於馬路上有一些區域要用來建地鐵。這些區域用它們在數軸上的起始點和終止點表示。已知任一區域的起...