洛谷 P3374 【模板】树状数组 1

2023-11-03

题目链接:https://www.luogu.com.cn/problem/P3374

#include <iostream>
#include <cstdio>

using namespace std;

const int N = 500010;

int n, m, c[N];

// 返回x的二进制最右边1所对应的值
int lowbit(int x)
{
    return x & -x;
}

// 返回a[1]+...+a[x]的和
int ask(int x)
{
    int res = 0;
    for (int i = x; i; i -= lowbit(i))
    {
        res += c[i];
    }
    return res;
}

// 令a[x] += y
void add(int x, int y)
{
    for (int i = x; i <= n; i += lowbit(i))
    {
        c[i] += y;
    }
}

int main()
{
    scanf("%d%d", &n, &m);
    
    for (int i = 1; i <= n; i++)
    {
        int x;
        scanf("%d", &x);
        add(i, x);
    }
    
    while (m--)
    {
        int op, x, y;
        scanf("%d%d%d", &op, &x, &y);
        if (op == 1)
        {
            add(x, y);
        }
        else
        {
            printf("%d\n", ask(y) - ask(x - 1));
        }
    }
    
    return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

洛谷 P3374 【模板】树状数组 1 的相关文章

随机推荐

  • iframe无边框(隐藏边框)

    用css的border none来去掉iframe的边框在IE下起不了作用 将iframe的frameborder属性的值设为no就可以
  • Java--==与equals()的区别

    一 使用的对象 基本数据类型 equals 引用数据类型 二 比较内容 是否为同一地址 equals 未重写 是否为同一地址 已重写 引用数据类型内容 三 重写 public boolean equals Objeat obj if thi
  • Python接单一个月,副业居然比主业收入要多?

    python爬虫肯定是可以当副业的 我身边一个伙伴就靠会python爬虫这一项技能一个月差不多能有一万多收入 他截图给我看的他的收入图是这样的 人家一个月就靠接单这个副业都比很多人主业收入要多 每个月除主业外还有一万多收入 财务就相对自由的
  • 学习笔记二:IBIS模型编辑报错纠正

    新建IBIS文件后 写好了相应的IBIS模型文件 写好文件后 最好要检查下是否符合ibis语法 注意 第一点 IBIS头文件的 File name 此处名称需要和文件名称相同 同时名称字符数需在12个字符之内 否则会报错 File name
  • 一个javaer面试Python

    Python初面 一 初面缘由 今天是2022年的6月18日 广州 中雨转阴 非天气预报 我怀揣着紧张而有激动的心情趁着周末悄悄去面试了一次 说是去面试 其实也和玩差不多 公司的工作氛围很不错 空调很凉 零食很多 但是我没有心情享用 附上一
  • HFSS 3D LAOUT PCB 裁剪,差分线,过孔仿真和优化

    我本身不是做天线设计的 所以HFSS这个软件给我主要还是做PCB级别的高速信号完整性仿真 一般2 5D的仿真软件无法对过孔和跨平面进行仿真 所以要借助三维电磁软件进行 今天就针对PCB进行裁剪 为什么要裁剪 以为如果把整个PCB一起仿真的话
  • 移动APP专项测试

    什么是移动端测试 移动端测试是指对移动应用进行的测试 即实体的特性满足需求的特性 简言之就是针对移动平台的软件进行的测试 比如针对手机 ipad等平台上的各种app功能和性能展开的测试 相较于传统的web端的测试 移动端的测试受手机屏幕大小
  • 127.0.0.1和localhost的区别

    要比较两个东西有什么不同 首先要弄清两者的概念 所以 我们从概念开始 localhost 也叫local 正确的解释是 本地服务器 127 0 0 1 在windows等系统的正确解释是 本机地址 本机服务器 我们再看看他们的工作原理 lo
  • 关于块元素和行元素之间的转换

    如何让块元素变成行元素 将块级元素设置为行内元素 inline 可以通过以下几种方式 1 display inline 这个是最直接的方式 通过设置display样式为inline 可以将块级元素变为行内元素 例如 css div disp
  • element的日期组件-两个的和单个的组件

    dateOne vue
  • 云计算技术基础第1章 云的概念以及类型

    章节安排 第一章 云的概念及类型 第二章 虚拟化技术 第三章 云计算的架构和国内外研究现状 第四章 云计算与大数据 第五章 海量数据存储技术 第六章 云平台应用 本章内容 计算模式的回顾 云计算概念与特征 云计算的分类 云计算的发展动因 云
  • Spring Cloud Alibaba 大型微服务项目实战

    作者介绍 程序员十三 多年一线开发经验 历任高级开发工程师 后端主程 技术部门主管等职位 同时也是开源项目的爱好者和贡献者 掘金优秀作者 CSDN 博客专家 实体图书作者 专栏作者 视频讲师 小册介绍 Spring Cloud Alibab
  • 利用Python通过频谱分析和KNN完成iphone拨号的语音识别

    最近这段时间 学校里的事情实在太多了 从七月下旬一直到八月底实验室里基本天天十二点或者通宵 实在是没有精力和时间来写博客 这周老师出国开会 也算有了一个短暂的休息机会 刚好写点有意思的东西 上周在天津的会议上碰到一个北交的姐们儿 她想利用小
  • IDEA集成Git操作

    IDEA集成Git操作 IDEA绑定Git仓库 在需要的工程目录下创建Git仓库并完成仓库基本设置 此时IDEA界面出现的变化 若出现此变化 说明IDEA绑定Git仓库成功 IDEA集成的Git操作 右上角选项为Git基本操作 懒人操作 文
  • EMQX v4 安装及组建集群、设置负载均衡

    准备工作 操作系统ubuntu 16 04 虚拟机VMware Workstation 12 Pro 一 安装EMQX 1 打开EMQ首页 https www emqx io cn 2 选择产品 gt EMQ X Broker 3 在ubu
  • 机试复试准备中--梦校(华科)真题

    一 矩阵转置 二 统计单词 写法一 读取一整行 写法二 依次读入每一个单词 三 二叉排序树 DFS 四 IP地址 五 特殊排序 六 a b 高精度加法 七 奇偶校验 八 最大的两个数 九 二叉树遍历 DFS 十 成绩排序 十一 守形数 十二
  • vue:webpack打包过程中的常见错误-加载CSS文件

    问题1 ReferenceError dirname is not defined 解决方法 将 dirname写为 dirname 注意是两条 问题2 npm ERR code ERESOLVE npm ERR ERESOLVE unab
  • C# 任意开次方,次幂, 开平方,开三次方,平方根, 三次方根

    double a 0 开任意次方的关键是 1 0 2 必须写 0 点零 如果不写 就永远等于1 具体原因不清楚 可以测试代码 a Math Pow 2 1 2 可以跟开平方对比一下 开平方 平方根 a Math Pow 2 1 0 2 开任
  • c# yield 用法

    返回类型必须为 IEnumerable IEnumerable
  • 洛谷 P3374 【模板】树状数组 1

    题目链接 https www luogu com cn problem P3374 include