hiho刷题日记——第二十天线段树的区间修改
来源:互联网 发布:数据分析职业 编辑:程序博客网 时间:2024/04/30 13:02
题目
假设货架上从左到右摆放了N种商品,并且依次标号为1到N,其中标号为i的商品的价格为Pi。小Hi的每次操作分为两种可能,第一种是修改价格——小Hi给出一段区间[L, R]和一个新的价格NewP,所有标号在这段区间中的商品的价格都变成NewP。第二种操作是询问——小Hi给出一段区间[L, R],而小Ho要做的便是计算出所有标号在这段区间中的商品的总价格。
由于题目的数据规模是十万级。直接朴素算法就过了。
代码
#include<cstdio>using namespace std;const int MAXP=100000+1;int P[MAXP],N;int main(){ scanf("%d",&N); for(int i=1;i<=N;i++) scanf("%d",&P[i]); scanf("%d",&N); int o,l,r,p; while(N--) { scanf("%d%d%d",&o,&l,&r); if(o) { scanf("%d",&p); for(int i=l;i<=r;i++) P[i]=p; } else { for(int i=l;i<=r;i++) o+=P[i]; printf("%d\n",o); } } return 0;}
0 0
- hiho刷题日记——第二十天线段树的区间修改
- hiho一下 第二十周 线段树的区间修改
- hiho刷题日记——第二十九天最小生成树三·堆优化的Prim算法
- hiho刷题日记——第二十七天最小生成树二·Kruscal算法
- hiho刷题日记——第二十五天最短路径·三:SPFA算法
- hiho刷题日记——第二十八天题外话·堆
- hiho一下第二十周 #1078 : 线段树的区间修改 【线段树】
- HIHO #1078 : 线段树的区间修改
- hiho一下 第二十周(线段树区间修改+延迟标记)
- hiho刷题日记——第二天Trie树
- hiho刷题日记——第十二天刷油漆
- hiho刷题日记——第一天 A+B
- hiho刷题日记——第三天KMP算法
- hiho刷题日记——第四天Trie图
- hiho刷题日记——第五天数字三角形
- hiho刷题日记——第六天01背包
- hiho刷题日记——第七天完全背包
- hiho刷题日记——第十天后序遍历
- ajax返回结果后跳转无效问题
- android HttpURLConnection网络访问
- android实例源码
- for循环程序练习
- activemq学习第一天
- hiho刷题日记——第二十天线段树的区间修改
- HTML下table的加载
- VMware虚拟机Mac-OS-X系统如何切换中英文输入法
- hdu 1003 Max Sum
- 主线程 子线程 加锁原因
- UVa 11222 - Only I did it!
- Linux学习笔记1
- 使用OpenSSL生成自已的证书
- UIPickerView(API+选择器使用)