摘要:
一句话题解: 先把相等的点缩小成一个点(并入一个集合),然后在通过大小关系处理剩余点(集合)之间的关系(拓扑排序) #include<bits/stdc++.h> using namespace std; #define ll long long #define fastio ios::sync_w 阅读全文
摘要:
20行写完极其害怕 只能跑1e5的数据,那个1e6强制在线的开o2只有20pts QAQ 不用reserve也可以过,不过开了之后200ms的点只要130-140ms #include<bits/stdc++.h> using namespace std; #define ll long long 阅读全文
摘要:
本以为只是不会线段树,写完之后发现二分也不会 问题出在几个地方: 一、 这个是正确复杂度的查询 int query(int x, int y, int p) { int l = t[p].l, r = t[p].r; if (!x)return 0; if (x <= l && r <= y)ret 阅读全文
摘要:
#C-Decrement on the Tree 统计每个点连接边的边权和以及最大边权,然后进行如下贪心: ll find(ll x)//将边权存到了multiset<ll>s[x] { ll Max = *(--s[x].end());//x节点连的最大边 if (Max >= sum[x] - 阅读全文