【牛客小白月赛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' 否则 输出 ...
随机推荐
- yapi的安装
1.官方网站:https://hellosean1025.github.io 2.看官方的文档,部署方法: 3. 根据文档 安装环境先: 4. 开始安装yapi 5. 可见需要启动一下 6.重启一下 ...
- Typora+PicGo+码云Gitee搭建本地博客环境
Typora+PicGo+码云Gitee搭建本地博客环境 前期准备: 安装Typora 安装链接:https://typora.io/ 安装PicGo 安装链接:https://github.com/ ...
- CF1861
只做出 A,身败名裂 A 显然不管怎么排,13,31 总有一个会出现,看看哪个出现. B 给定两个 01 串,每次可以挑一个串的一个子串,要求两端相同,然后把这个子串全部变得和两端相同. 问经过若干次 ...
- 易语言读取Mysql表数据
源码下载: https://download.csdn.net/download/IndexMan/12029860 1.界面设计 2.效果展示 3.源码展示 程序集变量: 读取数据按钮: 读取数据子 ...
- Jsp+Servlet实现文件上传下载(二)--文件列表展示
接着上一篇讲: Jsp+Servlet实现文件上传下载(一)--文件上传 点击打开链接 本章来实现一下上传文件列表展示,同时优化了一下第一章中的代码. 废话少说,上代码 --------------- ...
- 双哈希_Birthday_Cake
Birthday Cake 思路:找到每个串的公共前后缀,统计公共前后缀之间的字符串的hash值,并判断所给n个串中是否存在符合条件的串 eg:abbddab 对于该串,我们不难发现,公共前后缀是ab ...
- Innodb存储引擎之锁
目录 一.概述 二.lock 与 latch 三.Innodb存储引擎中的锁 锁 一致性非锁定读 一致性锁定读 自增长与锁 外键与锁 四.锁的算法 锁的算法 Phantom Problem 幻读问题 ...
- C# EnumWindows示例代码
代码开箱即用,唯一需要处理的就是要提供一个进程的pid. using System; using System.Collections.Generic; using System.Linq; usin ...
- 以二进制文件安装K8S之高可用部署架构
在Kubernetes系统中,Master节点扮演着总控中心的角色,通过不间断地与各个工作节点(Node)通信来维护整个集群的健康工作状态,集群中各资源对象的状态则被保存在etcd数据库中. 在正式环 ...
- 彻底搞懂Java中的Runnable和Thread
写在前面 今天在阅读ThreadPoolExecutor源码的时候觉得有些地方理解起来似是而非,很别扭!最后才猛然发现,原来是我自己的问题:没有真正理解Runnable和Thread的含义! 我之前对 ...