本地能运行,但一提交就RE!!!
#include<bits/stdc++.h>
using namespace std;
const int N=50050;
struct node{
int s,e,num;
}a[N];
int n,k,c,ans,h[N],l[N];
bool cmp(node a,node b)
{
if(a.e!=b.e) return a.e<b.e;
else return a.s<b.s;
}
int lowbit(int i)
{
return i&(-i);
}
int add(int i,int k)
{
for(;i<=n;i+=lowbit(i))
h[i]+=k;
}
int add2(int i,int k)
{
for(;i<=n;i+=lowbit(i))
l[i]+=k;
}
int sum(int i)
{
int ans=0;
for(;i>0;i-=lowbit(i))
ans+=h[i];
return ans;
}
int sum2(int i)
{
int ans=0;
for(;i>0;i-=lowbit(i))
ans+=l[i];
return ans;
}
int main()
{
cin>>k>>n>>c;
for(int i=1;i<=k;i++)
cin>>a[i].s>>a[i].e>>a[i].num;
sort(a+1,a+1+k,cmp);
for(int i=1;i<=k;i++)
{
int f=min(c-sum(a[i].s)-sum2(a[i].e)+sum2(a[i].s-1),a[i].num);
ans+=f;
add(a[i].s,f);
add(a[i].e,-f);
add2(a[i].s,f);
}
cout<<ans;
}
题目显示 Runtime Error. Received signal 11: Segmentation fault with invalid memory reference.