不會的同學可以先參考這個部落格
題目;loj6280
題目描述
給出乙個長為 的數列,以及 個操作,操作涉及區間加法,區間求和。
輸入格式
第一行輸入乙個數字 。
第二行輸入 個數字,第 個數字為 ,以空格隔開。
接下來輸入 行詢問,每行輸入四個數字 、、、,以空格隔開。
若 ,表示將位於 的之間的數字都加 。
若 ,表示詢問位於 的所有數字的和 。
#pragma gcc optimize(1)#pragma gcc optimize(2)
#pragma gcc optimize(3,"ofast","inline")#include
using
namespace
std;
typedef
long
long
ll;template
void read(tp &x)
if(ch=='-'
)else fh=1
;
while(ch>='
0'&&ch<='9'
) x*=fh;
}inline
char
read1()
const
int maxn=1e6+100
;ll a[maxn],l[maxn],r[maxn],belong[maxn],lazy[maxn],ans;
ll sum[maxn];
ll n,op,x,y,k,block,tot;
void
build()
for(register int i=1;i<=n;i++)
for(register int i=1;i<=tot;i++)
r[tot]=n;
for(int i=1; i<=tot; i++)
}void
change()
}else
for(register int i=l[belong[y]];i<=y;i++)
for(register int i=belong[x]+1;i)
} }void
ask()
printf(
"%lld\n
",ans%(k+1
)); }
else
for(register int i=l[belong[y]];i<=y;i++)
for(int i=belong[x]+1;i)
printf(
"%lld\n
",ans%(k+1
)); }
} int
main()
build();
for(int i=1;i<=n;i++)
else
} }
UPC11449 餘數求和(分塊)
時間限制 1 sec 記憶體限制 128 mb 提交 91 解決 48 提交 狀態 命題人 admin 題目描述 給出正整數n和k,計算j n,k k mod 1 k mod 2 k mod 3 k mod n的值。其中 k mod i表示k除以i的餘數。例如j 5,3 3 mod 1 3 mod ...
51nod 1225 餘數求和(分塊)
f n n 1 n 2 n 3 n n 其中 表示mod,也就是餘數。例如f 6 6 1 6 2 6 3 6 4 6 5 6 6 0 0 0 2 1 0 3。給出n,計算f n 由於結果很大,輸出mod 1000000007的結果即可。input 輸入1個數n 2 n 10 12 output 輸出...
bzoj 3809 莫隊 分塊求和
time limit 80 sec memory limit 28 mb submit 1185 solved 330 submit status discuss autumn和bakser又在研究gty的妹子序列了!但他們遇到了乙個難題。對於一段妹子們,他們想讓你幫忙求出這之內美麗度 a,b 的妹...