
区间和的和
发布日期:2021-05-07 06:54:29
浏览次数:17
分类:原创文章
本文共 427 字,大约阅读时间需要 1 分钟。
题目链接:
思路
我们可以看每个数出现在了多少个区间中,可以看出出现了 i ∗ ( n − i + 1 ) i * (n - i + 1) i∗(n−i+1)次。
那么,我们用这个值乘以它,把他们的值加在一起,就是区间和的和了。
(记得对 1000000009 1000000009 1000000009取模)
代码
#include<cstdio>#define ll long longusing namespace std;ll n, a, ans;int main() { scanf("%lld", &n);//读入 for (ll i = 1; i <= n; i++) { scanf("%lld", &a);//读入 ans = (ans + a * (i * (n - i + 1))) % 1000000007;//加上它所出现的次数*它 } printf("%lld", ans);//输出 return 0;}
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年03月24日 12时41分24秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Java获取线程基本信息的方法
2019-03-04
Java集合Collection
2019-03-04
SpringBoot快速入门
2019-03-04
医疗管理系统-手机快速登录和SpringSecurity权限控制
2019-03-04
网页实现微信登录
2019-03-04
vue源码分析(MVVM篇)
2019-03-04
React(八)- ReactUI组件库及Redux的使用
2019-03-04
TypeScript系列(一)- TypeScript简介与编译配置
2019-03-04
TypeScript系列文章导航
2019-03-04
hibernate和mybatis的区别
2019-03-04
Java中Map的用法详解
2019-03-04
base64编码字符串和图片的互转
2019-03-04
汉字转为拼音
2019-03-04
linux 下安装kolla报错 提示Cannot uninstall requests
2019-03-04
C++ throw、try、catch、noexcept
2019-03-04
设计模式之组合模式
2019-03-04
Linux 验证、数字证书、RPM包中文件的提取
2019-03-04
(恋上数据结构笔记):优先级队列(Priority Queue)
2019-03-04