news 2026/4/23 9:52:08

打卡信奥刷题(2716)用C++实现信奥题 P3368 【模板】树状数组 2

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2716)用C++实现信奥题 P3368 【模板】树状数组 2

P3368 【模板】树状数组 2

题目描述

如题,已知一个数列,你需要进行下面两种操作:

  1. 将某区间每一个数加上xxx

  2. 求出某一个数的值。

输入格式

第一行包含两个整数NNNMMM,分别表示该数列数字的个数和操作的总个数。

第二行包含NNN个用空格分隔的整数,其中第iii个数字表示数列第 $i $ 项的初始值。

接下来MMM行每行包含222444个整数,表示一个操作,具体如下:

操作111: 格式:1 x y k含义:将区间[x,y][x,y][x,y]内每个数加上kkk

操作222: 格式:2 x含义:输出第xxx个数的值。

输出格式

输出包含若干行整数,即为所有操作222的结果。

输入输出样例 #1

输入 #1

5 5 1 5 4 2 3 1 2 4 2 2 3 1 1 5 -1 1 3 5 7 2 4

输出 #1

6 10

说明/提示

样例 1 解释:

故输出结果为666101010


数据规模与约定

对于30%30\%30%的数据:N≤8N\le8N8M≤10M\le10M10

对于70%70\%70%的数据:N≤104N\le 10^4N104M≤104M\le10^4M104

对于100%100\%100%的数据:1≤N,M≤5×1051 \leq N, M\le 5\times10^51N,M5×1051≤x,y≤n1 \leq x, y \leq n1x,yn,保证任意时刻序列中任意元素的绝对值都不大于2302^{30}230

C++实现

#include<bits/stdc++.h>usingnamespacestd;constintN=5e5+10;intn,m,a[N];longlongc[N];// 注意 c 中的值可能超过 int 范围intlowbit(intx){returnx&(-x);}voidadd(intx,intk){// 修改操作while(x<=n){c[x]+=k;x+=lowbit(x);}return;}longlongsum(intx){// 查询操作longlongres=0;while(x){res+=c[x];x-=lowbit(x);}returnres;}intmain(){cin>>n>>m;for(inti=1;i<=n;++i){cin>>a[i];add(i,a[i]-a[i-1]);// 按照差分含义初始化}while(m--){intop;cin>>op;if(op==1){intl,r,k;cin>>l>>r>>k;add(l,k),add(r+1,-k);// 差分操作}else{intx;cin>>x;cout<<sum(x)<<"\n";// 前 x 个数的和}}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:54:01

边缘计算节点分布式回归框架的技术架构

一、测试从业者的核心痛点 ‌环境局限性‌&#xff1a;传统测试集群难以模拟真实边缘设备的网络波动与硬件差异。‌资源争用‌&#xff1a;多版本并行回归测试时计算资源分配冲突。‌反馈延迟‌&#xff1a;跨地域设备测试结果聚合耗时&#xff0c;影响CI/CD流水线效率。 二、…

作者头像 李华
网站建设 2026/4/18 5:53:19

电商防止超卖终极方案:让库存管理滴水不漏![特殊字符]

标题&#xff1a; 超卖&#xff1f;不存在的&#xff01;五大方案让你高枕无忧 副标题&#xff1a; 从数据库锁到Redis原子操作&#xff0c;防超卖全攻略&#x1f3ac; 开篇&#xff1a;一个惨痛的案例makefile体验AI代码助手代码解读复制代码双11零点&#xff0c;某电商平台&a…

作者头像 李华
网站建设 2026/3/30 11:15:41

OpenAI芯片自研与开发者大会技术动态

OpenAI与某中心达成协议&#xff0c;为其人工智能设计自研芯片 相关报道&#xff1a;受此消息影响&#xff0c;某中心股价上涨9%… OpenAI在开发者大会上宣布的所有内容 在年度开发者大会上&#xff0c;OpenAI发布了一系列产品更新和模型增强&#xff0c;主要包括&#xff1a; …

作者头像 李华
网站建设 2026/4/9 10:48:45

计算机毕业设计springboot在线教育平台 基于Spring Boot框架的在线学习管理系统开发 Spring Boot驱动的在线教育平台设计与实现

计算机毕业设计springboot在线教育平台4028s &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。随着互联网技术的飞速发展&#xff0c;在线教育逐渐成为人们获取知识的重要途径之一…

作者头像 李华
网站建设 2026/4/18 8:44:55

python之lession 2

一、基础语法 age 18 #普通变量 user_name "alice"或者user_name ‘alice’ #字符串 _total 100 #下划线开头表示内部使用或者私有 MAX_SIZE 100 #全大写通常表示的是常量二、逻辑值 True表示真 False表示假 None表示空值或者无值三、逻辑运算 and与 or表示逻辑…

作者头像 李华