傳送門:
在乙個數軸上有n條線段,線段的端點均為數軸上的整數點。
現在請你刪除盡量少的線段,使得剩下的線段不相交。
輸出剩下的線段數
輸入規模較大,建議使用讀入優化
貪心先按照左端點、右端點得大小排序
然後從前向後貪心的取線段,維護當前右端點now
每次取線段得時候有考慮兩種情況
#include
using namespace std;
const
int maxn=
2e6+10;
struct seg p[maxn]
;int n;
inline
intread()
while
(ch>=
'0'&&ch<=
'9')
return x*f;
}bool cmp
(seg a, seg b)
intmain()
sort
(p,p+n,cmp)
;int now=p[0]
.r,ans=1;
for(
int i=
1; i)else
}printf
("%d\n"
,ans)
;}
51nod 雷達覆蓋
現在有n個雷達。每個雷達的覆蓋區域是乙個正方體,區域用乙個頂點座標p x,y,z 和邊長l表示,p是區域的乙個頂點,整個區域是由p沿x,y,z軸正方向延展l得到的乙個正方體。現在想知道哪些區域是被所有雷達覆蓋到的,計算出這些區域的總體積。收起單組測試資料。第一行有乙個整數n 2 n 1000 表示雷...
51NOD 1031 骨牌覆蓋
1031 骨牌覆蓋 基準時間限制 1 秒 空間限制 131072 kb 分值 10 難度 2級演算法題 在2 n的乙個長方形方格中,用乙個1 2的骨牌排滿方格。問有多少種不同的排列方法。例如 2 3的方格,共有3種不同的排法。由於方案的數量巨大,只輸出 mod 10 9 7 的結果 輸入n n 10...
51nod 1031 骨牌覆蓋
在2 n的乙個長方形方格中,用乙個1 2的骨牌排滿方格。問有多少種不同的排列方法。例如 2 3的方格,共有3種不同的排法。由於方案的數量巨大,只輸出 mod 10 9 7 的結果 input 輸入n n 1000 output 輸出數量 mod 10 9 7 input示例 3 output示例 3...