時間限制: 2 s
空間限制: 256000 kb
題目等級 : ** gold
在乙個數軸上有n條線段,現要選取其中k條線段使得這k條線段兩兩沒有重合部分(端點可以重合),問最大的k為多少。
輸入描述 input description
輸入格式
輸入檔案的第1行為乙個正整數n,下面n行每行2個數字ai,bi,描述每條線段。
輸出描述 output description
輸出格式
輸出檔案僅包括1個整數,為k的最大值
樣例輸入 sample input
0 22 4
1 3樣例輸出 sample output
資料範圍及提示 data size & hint
資料範圍
對於20%的資料,n≤10;
對於50%的資料,n≤1000;
對於70%的資料,n≤100000;
對於100%的資料,n≤1000000,0≤ai<bi≤1000000。
1 #include2 #include3 #include4using
namespace
std;
5const
int n=1000001;6
struct
nodes[n];
9bool
cmp(node a,node b)
1013
intmain()
1422 sort(s+1,s+n+1
,cmp);
23int ans=0;24
for(int i=1;i<=n-1;i++)
2531
}32 cout33 }
codevs 1643 線段覆蓋 3
資料大到nlogn沒法做。然而我做1的時候用的就是貪心演算法。所以無影響。並且到這個地步。基本上就是卡io操作了 輸入輸出 cin cout會比較慢 關閉流同步後能快一倍 再快就只能用scanf printf 或者手寫讀入函式 讀入優化技巧 includeusing namespace std de...
codevs 1643 線段覆蓋 3 貪心 快排
題目描述 description 在乙個數軸上有n條線段,現要選取其中k條線段使得這k條線段兩兩沒有重合部分 端點可以重合 問最大的k為多少。輸入描述 input description 輸入格式 輸入檔案的第1行為乙個正整數n,下面n行每行2個數字ai,bi,描述每條線段。輸出描述 output ...
線段樹線段覆蓋(離散化 區間覆蓋)
n n 10000 個人依次貼海報,給出每張海報所貼的範圍li,ri 1 li ri 10000000 求出最後還能看見多少張海報。input 第一行 樣例個數t 第二行 貼海報的人n 第三行 每個人貼海報的範圍 接下來n行 每個人貼海報的範圍 output 對於每乙個輸入,輸出最後可以看到的海報張...