有乙個長度為整數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
3100
200150
300470
471
輸出
298
錯誤**
#include
using
namespace std;
intmain()
for(
int i =
0; i < m -
1; i++
) cout << rest;
}
**可以通過示例但是不能通過題中的測試用例,目前沒有發現具體錯誤在哪
檢視通過**,有一位大佬用的陣列,遂受到啟發,真的是太妙了,一分鐘就編出來通過了。
#include
using
namespace std;
intmain()
int j=0;
for(
int i=
0;iint num=0;
for(
int i=
0;i1;i++
) cout<}
思路:用陣列存1表示樹還在,存0表示已去掉,最後數1的個數表示剩下的樹。 牛客網機試題 N的階乘
輸入乙個正整數n,輸出n的階乘 正整數n 0 n 1000 輸入可能包括多組資料,對於每一組輸入資料,輸出n的階乘 4 5 15 24 120 1307674368000 include define n 10000 int main if carry res bit carry 依次從當前位到最高...
牛客網 剩下的樹
題目描述 有乙個長度為整數l 1 l 10000 的馬路,可以想象成數軸上長度為l的乙個線段,起點是座標原點,在每個整數座標點有一棵樹,即在0,1,2,l共l 1個位置上有l 1棵樹。現在要移走一些樹,移走的樹的區間用一對數字表示,如 100 200表示移走從100到200之間 包括端點 所有的樹。...
牛客網 剩下的樹 線段樹入門
mn o mn o mn 複雜度都可以過,可以見得資料之水當然這道題的資料量本身也是符合這個複雜度的,ps fill和memset別用得太多,有時候會被卡死 include include include include include include include include using n...