本文共 776 字,大约阅读时间需要 2 分钟。
主题链接:
#include #include #include #include #include #include #include #include #include #include #include using namespace std;#define N 500005#define ll intll n;ll c[N], maxn;inline ll lowbit(ll x){return x&(-x);}void change(ll pos, ll val){ while(pos)c[pos]=max(c[pos],val), pos-=lowbit(pos);}ll maxx(ll pos){ ll ans = -1; while(pos<=maxn)ans = max(ans,c[pos]),pos+=lowbit(pos); return ans;}struct node{ ll b[3],num;}w[N];bool cmp0(node x, node y){return x.b[0] y.b[1];}int main(){ ll i,j; while(cin>>n) { for(i=0;i w[j].b[2]) ans++; for(j = i; j < n && w[i].b[1] == w[j].b[1]; j++) change(w[j].num, w[j].b[2]); i = j; } cout< <
版权声明:本文博客原创文章,博客,未经同意,不得转载。