题目内容
小苯有一个由n个整数组成的数组{a1,a2,..,an},他对数组的乘积非常感兴趣,因此他提出了q次询问,具体地,每次询问:
- 小苯会询问一个数字len,他想知道数组中所有长度为len的区间的乘积之和(形式化的:定义f(l,r)=al×al+1×...×ar,则对于所有1≤l≤r≤n,r−l+1=len的(l,r),求 f(l,r) 之和。)
题解
题面描述
给定一个由n个整数组成的数组{a1,a2,…,an}。小苯对数组中各个区间的乘积很感兴趣,并提出了q个询问:对于每个询问给定一个长度len,要求计算数组中所有长度为len的区间的乘积之和,定义区间(l,r)的乘积为
f(l,r)=al×al+1×⋯×ar
但有个特殊要求:如果某个区间的乘积f(l,r)>109,则直接将其视为0(不计入总和)。