一道插线问线离线版的题
复杂度O(n);
代码如下:
#include<stdio.h>
#include<string.h>
const int M = 1000003;
const int mod=10003;
int num[M];
int main()
{
int n,c,q;
scanf("%d%d%d",&n,&c,&q);
while(c--)
{
int a,b,x;
scanf("%d%d%d",&a,&b,&x);
num[a]+=x;
num[b+1]-=x;
}
for(int i=1;i<=n;i++)
num[i]+=num[i-1];
for(int i=1;i<=n;i++)
num[i]=(num[i]+num[i-1])%mod;
while(q--)
{
int a,b;
scanf("%d%d",&a,&b);
printf("%d\n",(num[b]-num[a-1]+mod)%mod);
}
return 0;
}