終於做了乙個簡單題,233
先對區間拍個序
因為他說所有區間互不包含
所以排序之後可以雙指標l,r指呀指
容易得到 這樣每個值最多插入刪除一邊
一次操作logn
總複雜度nlogn
#include #define for(i,a,b) for(int i=a;i<=b;++i)
using namespace std;
const int maxn=3e5+7;
int read()
int n,m,rt,a[maxn];
int ch[maxn][2],val[maxn],pri[maxn],siz[maxn],cnt;
struct node
}int main()
for(i,1,m) cout
}
P1533 可憐的狗狗
小卡由於公務需要出差,將新家中的狗狗們託付給朋友嘉嘉,但是嘉嘉是乙個很懶的人,他才沒那麼多時間幫小卡餵狗狗。小卡家有n隻狗,由於品種 年齡不同,每乙隻狗都有乙個不同的漂亮值。漂亮值與漂亮的程度成反比 漂亮值越低越漂亮 吃飯時,狗狗們會按順序站成一排等著主人給食物。可是嘉嘉真的很懶,他才不肯喂這麼多狗...
洛谷 P1533 可憐的狗狗 題解
題目鏈結 這題很多做法都可以過,這裡用的是離線 平衡樹treap 題目中 給出的區間不互相包含,是離線操作的乙個重要條件 我們將給出的區間按左端點從小到大排序,當左端點相同時,按右端點從小到大排序,滿足區間訪問的元素位置遞增 如果有區間互相包含就無法實現 對於每乙個區間 li ri l i,r i ...
洛谷 1533 可憐的狗狗
小卡家有n隻狗,由於品種 年齡不同,每乙隻狗都有乙個不同的漂亮值。漂亮值與漂亮的程度成反比 漂亮值越低越漂亮 吃飯時,狗狗們會按順序站成一排等著主人給食物。可是嘉嘉真的很懶,他才不肯喂這麼多狗呢,這多浪費時間啊,於是他每次就只給第i只到第j只狗中第k漂亮的狗狗餵食 好狠心的人啊 而且為了保證某乙隻狗...