有乙個長度為整數l(1<=l<=10000)的馬路,可以想象成數軸上長度為l的乙個線段,起點是座標原點,在每個整數座標點有一棵樹,即在0,1,2,…,l共l+1個位置上有l+1棵樹。 現在要移走一些樹,移走的樹的區間用一對數字表示,如 100 200表示移走從100到200之間(包括端點)所有的樹。 可能有m(1<=m<=100)個區間,區間之間可能有重疊。現在要求移走所有區間的樹之後剩下的樹的個數。
輸入描述:
兩個整數l(1<=l<=10000)和m(1<=m<=100)。
接下來有m組整數,每組有一對數字。
輸出描述:
可能有多組輸入資料,對於每組輸入資料,輸出乙個數,表示移走所有區間的樹之後剩下的樹的個數。
示例1
輸入
500 3
100 200
150 300
470 471
輸出
298主要是思路的總結:
#include
intmain()
int beg, end;
for(
int i =
0; i < m; i++)}
int num=
0for
(int i =
0; i < l +
1; i++)}
printf
("%d"
, num);}
return0;
}
leetcode刷題之樹
樹的三種遍歷方式 的 非遞迴版本 中序遍歷 下面的解法就是相當於 第一趟先把元素按照中序的順序進棧 第二趟 是相當於把 null標記過的位置給拿出來 class solution else return res 先序遍歷 class solution else return res 公共父節點 pu...
刷題 劍指offer之圓圈中最後剩下的數字
題目 有n個人,圍成乙個環,編號為 0 1 2 3 n 1,從第乙個人開始迴圈報數 從1開始 假設數到m的那個人出列,然後從下乙個人繼續數數,數到m出列,以此迴圈,最後那個人為勝利者,求勝利者的編號。這其實就是有名的約瑟夫問題。可以使用陣列或者鍊錶來模擬這n個人,每次刪除第m個人,直到只剩下乙個人為...
牛客網刷題之樹
題目描述 給定乙個僅包含數字0 9的二叉樹,每一條從根節點到葉子節點的路徑都可以用乙個數字表示。例如根節點到葉子節點的一條路徑是1 2 3,那麼這條路徑就用123來代替。找出根節點到葉子節點的所有路徑表示的數字之和 例如 1 2 3根節點到葉子節點的路徑1 2用數字12代替 根節點到葉子節點的路徑1...