2 2校門外的樹 POJ 2808(動態申請空間)

2021-10-02 11:27:33 字數 870 閱讀 7599

note:

c++不能用變數定義陣列長度,應通過指標來動態申請空間,實現動陣列長度的變數賦值。

eg:int *a = new int[i];(i為變數)

問題描述:

某校門外長度為l的馬路上有一排樹,每兩顆相鄰的樹之間的間隔都是1m。可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置;數軸上的每個整數點,即0,1,2,...,l都種有一棵樹。馬路上有一些區域要用來建地鐵,這些區域用它們在數軸上的起始點和終止點表示。已知任一區域的起始點和終止點的座標都是整數,區域之間可能有重合的部分。現在要把這些區域中的樹(包括區域端點處的兩棵樹)移走,任務是計算將這些樹都移走後,馬路上還有多少棵樹。

輸入資料:

輸入包括多組測試資料,每組的第一行有兩個整數l(1<=l<=10000)和m(1<=m<=100),l代表馬路的長度,m代表區域的數目,l和m之間用乙個空格隔開。接下來的m行,每行包括兩個不同的整數,用乙個空格隔開,表示乙個區域的起始點和終止點的座標。

輸出要求:

輸出包括一行,這一行只包含乙個整數,表示馬路上剩餘的樹的數目。

輸入樣例:

500 3

150 300

100 200

470 471

輸出樣例:

#include#include#includeusing namespace std;

int main()

for(j = a; j <= b; j++)

tree[j] = 0;

} for(i = 0; i <= l; i++)

cout << sum;

system("pause");

return 0;

}

POJ 2808 校門外的樹

時間限制 1000m 記憶體限制 65536kb 描述某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置 數軸上的每個整數點,即0,1,2,l,都種有一棵樹。馬路上有一些區域要用來建地鐵,這些區域用它們在數軸...

百煉POJ 2808 校門外的樹

分析 這個問題可以概括為輸入乙個大的整數閉區間,及一些可能相互重疊的在該大區間內的小的整數閉區間。在大的整數閉區間內去除這些小的整數閉區間,問之後剩下的可能不連續的整數區間內有多少個整數。可以採用用空間換時間的方法,用乙個陣列來模擬這些區間,類似於位向量的辦法。在陣列中乙個數代表一棵樹,若沒移走,為...

2808 校門外的樹

time limit 1000ms memory limit 65536kb description 某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置 數軸上的每個整數點,即0,1,2,l,都種有一棵樹。馬...