Pagini recente » Cod sursa (job #98109) | Cod sursa (job #1903472) | Cod sursa (job #337383) | Cod sursa (job #258786) | Cod sursa (job #125124)
Cod sursa(job #125124)
#include<stdio.h>
long i,j,n,li,ls,t,max;
long a[50006],b[50006],c[50006];
long long sol;
int main(void)
{
freopen("gardieni.in","r",stdin);
freopen("gardieni.out","w",stdout);
scanf("%ld%ld",&n,&t);
for(i=1;i<=n;i++)
{
scanf("%ld%ld%ld",&a[i],&b[i],&c[i]);
if(b[i]>t)
b[i]=t;
sol+=c[i]*(b[i]-a[i]+1);
}
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
{
li=0;
ls=0;
if(a[j]<=a[i])
li=a[i];
else
if(a[j]>a[i]&&a[j]<=b[i])
li=a[j];
if(b[j]>=b[i])
ls=b[i];
else
if(b[j]<b[i]&&b[j]>=a[i])
ls=b[j];
max=c[i];
if(c[j]>c[i])
max=c[j];
if(ls&&li)
sol-=max*(ls-li+1);
}
printf("%lld\n",sol);
return 0;
}