博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nyoj 228 士兵杀死(五岁以下儿童)【树状数组】
阅读量:6966 次
发布时间:2019-06-27

本文共 567 字,大约阅读时间需要 1 分钟。

分析:这个问题问的是,因为它是一个单独的更新。因此,让我们更新,然后在c[i]表现为1~i之间,还原之后看起来像一个。

#include 
#include
#define M 1000005#define INF 10003int c[M];int main(){ int x, y, z, n, s, q; scanf("%d%d%d", &n, &s, &q); memset(c, 0, sizeof(c)); while(s --){ scanf("%d%d%d", &x, &y, &z); c[x] += z; c[y+1] -= z; } for(int i = 1; i <= n; i ++) c[i] += c[i-1]; for(int i = 1; i <= n; i ++) c[i] = (c[i]+c[i-1])%INF; while(q --){ scanf("%d%d", &x, &y); printf("%d\n", (c[y]-c[x-1]+INF)%INF); //由于怕c[y]-x[x-1]小于0,所以在加个INF。 } return 0;}

题目链接:

版权声明:本文博主原创文章,博客,未经同意不得转载。

你可能感兴趣的文章
与servlet Api 的集成
查看>>
《排序算法系列一、简单选择排序》
查看>>
用户报告性能缓慢的解决流程
查看>>
python第二阶段 第六天 模块
查看>>
java基础--集合Connection/Map
查看>>
做三年地方网站不如别人打一场麻将
查看>>
排序总结
查看>>
使用rsync实现数据实时同步备份--实战
查看>>
mybatis中的#和$的区别
查看>>
从带分隔符的文本导入数据
查看>>
python非官方的二进制扩展包下载地址
查看>>
Python回顾与整理5:映像和集合类型
查看>>
关于B站除夕夜被攻击
查看>>
jQuery learn - 1 - 选择元素 && CSS
查看>>
svn merge
查看>>
pxe和kickstart无人值守安装
查看>>
getGeneratedKeys自动获取主键的方法
查看>>
初来咋到的菜鸟
查看>>
国外设计师眼中的原型工具Mockplus
查看>>
SBIT典型应用
查看>>