【牛客小白月赛51 F平均题】数论,前缀和
import java.io.IOException;
import java.util.Scanner; public class Main {
static int MOD = 1000000007; public static void main(String[] args) throws IOException {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = scanner.nextInt();
}
//
int k = n / 2;
if( n%2 !=0){
k++;
} long[] sum = new long[k + 1];
for (int i = 0; i < n; i++) {
sum[0] += arr[i];
sum[0] %= MOD;
}
for (int x = 1; x < k; x++) {
sum[x] = (sum[x - 1] + 2 * MOD - arr[x - 1] - arr[n - x]) % MOD;
}
//求数组
long[] sumsum = new long[k + 1];
for (int i = 0; i < k; i++) {
if (i > 0) {
sumsum[i] = sumsum[i - 1] + sum[i];
} else {
sumsum[i] = sum[0];
}
sumsum[i] %= MOD;
}
//再求最简
long ans = 0;
for (int llen = 1; llen <= k; llen++) {
long tmp = 1L;
tmp = sumsum[llen - 1] * pow(llen, MOD - 2) % MOD;
ans = (ans + tmp) % MOD;
if (llen < k) {
tmp = sumsum[llen - 1] * pow(n +1 - llen, MOD - 2) % MOD;
ans = (ans + tmp) % MOD;
} else {
if (n % 2 == 1) {
continue;
} else {
tmp = sumsum[llen - 1] * pow(n +1 - llen, MOD - 2) % MOD;
ans = (ans + tmp) % MOD;
}
}
}
System.out.println(ans); } public static long pow(long b, int x) {
if (x == 0) {
return 1;
}
if (x == 1) {
return b;
}
long a = pow(b, x / 2);
if (x % 2 == 0) {
return a * a % MOD;
} else {
return ((a * a % MOD) * b) % MOD;
}
} }
【牛客小白月赛51 F平均题】数论,前缀和的更多相关文章
- 牛客网 牛客小白月赛1 F.三视图
F.三视图 链接:https://www.nowcoder.com/acm/contest/85/F来源:牛客网 这个题自己想一下三维的,正视图和左视图中y轴为行数,x轴和z轴是列数,因为 ...
- 牛客小白月赛12 F 华华开始学信息学 (分块+树状数组)
链接:https://ac.nowcoder.com/acm/contest/392/F来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32768K,其他语言65536K ...
- 牛客小白月赛6 F 发电 树状数组单点更新 求区间乘积 模板
链接:https://www.nowcoder.com/acm/contest/136/F来源:牛客网 HA实验是一个生产.提炼“神力水晶”的秘密军事基地,神力水晶可以让机器的工作效率成倍提升. ...
- 牛客小白月赛3 F 异或【区间交集】
链接:https://www.nowcoder.com/acm/contest/87/F 来源:牛客网 题目描述 Cwbc想测试一下他的加密协议,以便防止其他人偷看他给XHRlyb的信. Cwbc提出 ...
- 牛客网 牛客小白月赛1 B.简单题2-控制输出格式
B.简单题2 链接:https://www.nowcoder.com/acm/contest/85/B来源:牛客网 和A题一样,控制输出格式就可以. 代码: 1 #include<iostr ...
- 牛客网 牛客小白月赛1 A.简单题-控制输出格式setiosflags()函数+setprecision()函数
水一水博客,都不好意思写这篇博客,毕竟已经不是大一的了. 难得能把一整套题都写出来(日常智障).但是在这里不写G题あなたの蛙は旅⽴っています的题解. 有毒,G题关了流同步只能过94%的样例,说我运行超 ...
- 牛客小白月赛16 F 小石的妹子 (线段树)
链接:https://ac.nowcoder.com/acm/contest/949/F来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...
- 牛客小白月赛5 F 圆(circle) 【欧拉定理】
题目连接: https://www.nowcoder.com/acm/contest/135/F 签到题来了,送你们一个Python秒的题. Apojacsleam来到了OI大陆,经过了连年征战,成为 ...
- 牛客小白月赛1 A-简单题
描述 Etéreo 是个爱学习的好孩子.在年假期间,他依然热情于数学.他最近发现了一个高大上的东西:,他觉得这里的 非常的厉害!然后他又告诉你:,,他会告诉你 和 ,想请你告诉他 的值.当然这 ...
- 牛客小白月赛1 F 三视图 【循环】
题目链接 https://www.nowcoder.com/acm/contest/85/F 思路 记录每一个面 上的点 是否有方块 然后 根据它的输出顺序 遍历访问 如果有 输出 'X' 否则 输出 ...
随机推荐
- 设计模式 - 创建型模式 - 单例模式(C++)
1.前言 单例模式属于创建型模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点. 单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方 ...
- springboot log 没落盘
在配置文件中增加了下面的配置并不起作用. logging.file=/xx/xx.log 是因为在 springboot 2.2 版本之后上面的采纳数已经被废弃,需要用下面新的参数: logging. ...
- 哈希表(HashMap)与字符串哈希
哈希表 哈希表是一种通过映射来快速查找的数据结构.其通过键值对(key-value)来存储.一个数据通过哈希函数的运算来生成一个属于他自己的键值,尔后将其与键值绑定.当我们想查找这个数据时,就可以直接 ...
- 聚石塔的K8s 容器服务使用注意事项,坑的总结
1. 首先聚石塔是不能使用 8080 端口的,会审核不通过. 2.然而,容器服务默认的却是8080,最彻底的解决方法就是修改成80,注意3个地方: 以上3个地方要严重留意,缺一不可,已经踩了2次坑了, ...
- .NET应用程序7种最常见的性能问题及其解决方案
译者注:这篇文章依然是介绍.NET Framework框架下的性能问题排查,可能并不直接适用于.NET Core,但有时也能提供一些参考. .NET应用程序7种最常见的性能问题及其解决方案 原文地 ...
- Python 中Time 模块
python的time内置模块是一个与时间相关的内置模块,很多人喜欢用time.time()获取当前时间的时间戳,利用程序前后两个时间戳的差值计算程序的运行时间,如下: 1.使用time.time() ...
- 我的小程序之旅五:微信公众号扫码登录PC端网页
代码仓库:https://gitee.com/wlovet/gzh-qrlogin 一.准备材料 1.已认证的公众号(必须为服务号,订阅号没有该接口的权限) 2.一个网址,用于微信回调,推荐一个内网穿 ...
- FFmpeg开发笔记(十一):ffmpeg在移植到海思HI35xx平台之将ffmpeg库引入到sample的demo中
前言 上一篇交叉编译了ffmpeg的海思版本,使用交叉编译的qt的ffmpeg播放器在海思上播放,本片是将ffmpeg的环境添加进海思的sample环境中. 在海思sample中引入ffmpe ...
- Hdf5开发笔记(一):hdf5介绍,在windows上编译msvc2015x64版本
前言 matlab的matio库需要使用到hdf5,编译hdf5的msvc2015x64版本. HDF5介绍 HDF(Hierarchical Data Format)是一种设计用于存储和组织 ...
- django之manage.py migrate无效的问题
问题 已有的model,迁移之后,想重新设置字段,于是将migrations文件夹中除__init__.py之外其他文件都删掉,并且把数据库中的表删除,再次执行以下步骤python manage.py ...