51 Nod 1161 Partial sums
1161 Partial Sums
题目来源: CodeForces
基准时间限制:2 秒 空间限制:131072 KB 分值: 80 难度:5级算法题
收藏
取消关注
给出一个数组A,经过一次处理,生成一个数组S,数组S中的每个值相当于数组A的累加,比如:A = {1 3 5 6} => S = {1 4 9 15}。如果对生成的数组S再进行一次累加操作,{1 4 9 15} => {1 5 14 29},现在给出数组A,问进行K次操作后的结果。(每次累加后的结果 mod 10^9 + 7)
Input
第1行,2个数N和K,中间用空格分隔,N表示数组的长度,K表示处理的次数(2 <= n <= 5000, 0 <= k <= 10^9, 0 <= a[i] <= 10^9)
Output
共N行,每行一个数,对应经过K次处理后的结果。每次累加后mod 10^9 + 7。
Input示例
4 2 1 3 5 6
Output示例
1 5 14 29
#include<bits/stdc++.h>
#include<stdio.h>
#include<iostream>
#include<cmath>
#include<math.h>
#include<queue>
#include<set>
#include<map>
#include<iomanip>
#include<algorithm>
#include<stack>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long ll;
#define P 1000000007
typedef long long LL;
LL inv(LL t, LL p)
{//求t关于p的逆元,注意:t要小于p,最好传参前先把t%p一下return t == 1 ? 1 : (p - p / t) * inv(p % t, p) % p;
}int a[5005];
LL myC[5005];
LL ans[5005];
int main()
{int n,k;cin>>n>>k;for(int i=0;i<n;i++)scanf("%d",&a[i]);myC[0]=1;int k2=k;for(int i=1;i<n;i++){myC[i]=(1ll*k2*myC[i-1]%P)*inv(i%P,P)%P;k2++;}ll tmp;for(int i=0;i<n;i++){tmp=0;for(int j=i;j>=0;j--){tmp=(tmp+1ll*myC[j]*a[i-j]%P)%P;}ans[i]=tmp;}for(int i=0;i<n;i++)cout<<ans[i]<<endl;return 0;
}
转载于:https://www.cnblogs.com/linruier/p/9556908.html
51 Nod 1161 Partial sums相关推荐
- 51 nod 1427 文明 (并查集 + 树的直径)
1427 文明 题目来源: CodeForces 基准时间限制:1.5 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 安德鲁在玩一个叫"文明"的游戏.大妈正在 ...
- Partial Sums ZOJ - 1569
Given a series of n numbers a1, a2, -, an, the partial sum of the numbers is defined as the sum of a ...
- CF思维联系–CodeForces - 223 C Partial Sums(组合数学的先线性递推)
ACM思维题训练集合 You've got an array a, consisting of n integers. The array elements are indexed from 1 to ...
- 51 nod 1405 树的距离之和
1405 树的距离之和 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 给定一棵无根树,假设它有n个节点,节点编号从1到n, 求任意两点之间的距离(最短路径)之和. ...
- 51 nod 1439 互质对(Moblus容斥)
1439 互质对 题目来源: CodeForces 基准时间限制:2 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 有n个数字,a[1],a[2],-,a[n].有一个集合,刚开 ...
- [STL乱搞]51 Nod——1573 美丽的集合
[STL乱搞]51 Nod--1573 美丽的集合 题目梗概 在多重集之中,同一个元素可以出现多次. 我们现在有n个多重集合,第i个集合最开始都有一个元素ai(1≤i≤n). 定义多重集合的价值为子集 ...
- 51 nod 1006 最长公共子序列Lcs
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1006 参考博客 :http://blog.csdn.net/yysdsy ...
- 51 Nod 1366 贫富差距
1366 贫富差距 一个国家有N个公民,标记为0,1,2,...,N-1,每个公民有一个存款额.已知每个公民有一些朋友,同时国家有一条规定朋友间的 ...
- 51 nod 机器人走方格
从一个长方形的方格的右上角 走到 左下角 , 问一共有多少种不同的路线可以达到 . 1 #include<stdio.h> 2 #include<string.h> 3 #in ...
最新文章
- 树形dp——树的最远距离 hdu2196
- 0、为什么推荐学习PowerShell?
- mysql半同步复制问题排查
- 【数值分析】常微分方程数值解:欧拉公式
- msyql show命令(转)
- jzoj6342-[NOIP2019模拟2019.9.7]Tiny Counting【树状数组,容斥】
- 哥廷根,世界数学家的摇篮和圣地
- Bare HTTP不完全是RESTful
- eclipse-阶段四-Server Tomcat v8.5 Server at localhost failed to start.
- unity脚本生命流程
- Java中的代理模式--静态代理和动态代理
- 图像处理-RGB彩色图像均衡化处理
- 解决局域网共享文件时提示“没有权限访问,请与网络管理员联系请求访问权限“
- 机器学习 - 概念学习
- 威联通 php配置,威联通(qnap) NAS docker 安装 IYUU 步骤
- oracle导出BOM文件,ORACLE ERP导数据(BOM清单)
- 自学python面试_Python自学之路-面试题
- 顽童时代-----钟丽思
- 知云文献翻译打不开_学用系列|自带翻译功能的PDF文献阅读器——知云文献翻译3.0...
- 大数据Spark实战第一集 导学
热门文章
- 担心你的文章图片被盗?试试用python加水印
- leetcode - 1025. 除数博弈
- HTTP状态码及含义
- excel vba 快速显示及隐藏所选数据行,并获取多重选择区地址的行列号
- EFI模式下安装win8.1系统
- OpenCV--求取图像多轮廓质心,并于图像上绘制显示质心及其坐标
- 计算机桌面文件夹排序,电脑桌面文件整理前后对照
- 类加载器ClassLoader
- docker mysql 时区_配置mysql docker容器的时区
- optimized mysql_MySQL解释计划中“Select tables optimized away”的含义