#Summer2400211. partial_sum
partial_sum
partial_sum
题目背景
小z在看CF的题解的时候发现,有这么一个函数叫partial_sum,被用于求前缀和数组,它有以下两种重载:
1.partial_sum(__ first, __ last, __ result)
2.partial_sum(__ first, __ last, __ result, __ binary _op)
其中__ first表示被求前缀和的数组的起始位置,__ last 被求前缀和的数组的终止位置, __ result 表示存入数组的起始位置,__ binary _ op 表示自定义二元运算
于是小z去搜索了以下partial_sum的原理,其原理是 : 对于第 i 个数,* ( result + i ) = a [ i - 1 ] +a [ i ] ;
现在小z想在第一种重载的result上加点东西,让这个数组变得不一样
题目描述
给定两个整数 n 和 k , 其中n表示数组 a 的长度,k 为在result上加上的数
对于数组 a ,他的数据为 a [ i ] = i ; 下标从0开始
要求输出执行partial_sum( a , a+n , a+k ) 后的 a 数组
输入格式
两个整数 n 和 k ,分别表示数组长度和偏移量
输出格式
一个整数表示a [ n ] % 1e9+7
测试样例
输入样例
5 1
输出样例
0
数据范围
n <= 1e12 , k<=50