比赛场次 | 358 |
---|---|
比赛名称 | 数列操作练习题 |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2017-03-18 19:00:00 |
结束时间 | 2017-03-19 23:59:59 |
开放分组 | 全部用户 |
注释介绍 | 数列操作按顺序做=ω= 祝愿大家颓得好成绩 |
题目名称 | 数列操作C |
---|---|
输入输出 | shuliec.in/out |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试点数 | 20 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|---|---|---|---|
rvalue | AAAAAAAAAA | 0.111 s | 12.50 MiB | 100 |
_Itachi | AAAAAAAAAA | 0.340 s | 4.87 MiB | 100 |
HZOI_蒟蒻一只 | AAAAAAAAAA | 0.951 s | 8.32 MiB | 100 |
假设有一个长度为 $n(n≤100000)$ 的数列 $A$,支持如下两种操作:
1. 将 $A_i,A_{i+1},\dots,A j$ 的值均增加 $d$
2. 查询 $A_s+A_{s+1}+\dots+A_t(s≤t)$ 的值。
根据操作要求进行正确操作并输出结果。
第一行为一个正整数 $n$,表示数列的大小。
第二行有 $n$ 个整数,表示数列 $A$ 各项的初始值。
第三行为一个整数 $m$ ,表示操作的个数。
下面是 $m$ 行,每行描述一个操作:
$ADD$ $i$ $j$ $d$(将 $A_i,A_{i+1},\dots,A_j(1≤i,j≤n)$ 的值均增加一个整数 $d$)
$SUM$ $s$ $t$(表示查询 $A_s+\dots+A_t$ 的值)
对于每一次询问,输出查询到的结果。
4 1 4 2 3 3 SUM 1 3 ADD 2 2 50 SUM 2 3
7 56
所有答案小于 $4611686018427387904$
加强 $10$ 组极限数据,未全部重测 by rvalue 2018.2.26
$50$%的数据$1<=n<=50,000,1<=m<=50,000$;
$100$%的数据$1<=n<=10,0000,1<=m<=10,0000$;