当前位置: 首页 > news >正文

上海市计算机学会竞赛平台第六届上海市青少年算法竞赛网络赛(青年组)平方的和

题目描述

给定 nn 个整数 a1,a2,⋯ ,ana1​,a2​,⋯,an​,请求出两两数字和的平方的和,也就是

∑1≤i<j≤n(ai+aj)21≤i<j≤n∑​(ai​+aj​)2

由于这个数字比较大,输出答案模 1,000,000,0071,000,000,007 的余数。

输入格式
  • 第一行:单个整数 nn
  • 第二行:nn 个整数 a1,a2,…,ana1​,a2​,…,an​
输出格式
  • 单个整数:表示和模 1,000,000,0071,000,000,007 的余数。
数据范围
  • 30%30% 的数据,1≤n≤1001≤n≤100,0≤ai<1000≤ai​<100
  • 60%60% 的数据,1≤n≤100001≤n≤10000,0≤ai<100000≤ai​<10000
  • 100%100% 的数据,1≤n≤1,000,0001≤n≤1,000,000,0≤ai<1,000,0000≤ai​<1,000,000
样例数据

输入:

3
1 2 3

输出:

50

说明:

3*3+4*4+5*5

详见代码:

#include <bits/stdc++.h>
using namespace std;
int n;
long long a[1000005];
long long ans = 0;
const int mod = 1e9 + 7;
int main() 
{cin >> n;for(int i = 1; i <= n; i++) {cin >> a[i];ans += a[i] * a[i] % mod * (n - 1) % mod;ans += a[i] * a[i - 1] * 2 % mod;ans %= mod;a[i] += a[i - 1];a[i] %= mod;}cout << ans;return 0;
}

相关文章:

  • Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
  • 【2025CVPR】花粉识别新标杆:HieraEdgeNet多尺度边缘增强框架详解
  • 【PhysUnits】17.6 Unit基础结构(unit.rs)
  • python模拟键盘 鼠标操作 通过ctypes调用Windows API实现底层输入模拟
  • Android Studio 问题:Android Studio 一直开在 Updating indexes
  • 使用Mvnd加速Maven构建速度
  • 深度学习核心概念:优化器、模型可解释性与欠拟合
  • TI以太网PHY收发器晶体选择和规格
  • OpenGL学习20250610
  • 定时器任务——若依源码分析
  • 376. Wiggle Subsequence
  • Windows cmd中文乱码解决方法(Windows控制台中文乱码、CMD乱码、控制台乱码、Command Prompt命令提示符cmd.exe乱码)
  • docker 安装运行mysql8.4.4
  • 多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
  • Loss Margin的原理与推导
  • 一天时间解决期末不挂科
  • 代码解读——ReferenceNet
  • 【位运算】消失的两个数字(hard)
  • STM32 PID控制
  • Hyperlane 框架详解与使用指南
  • 建设部网站怎么查询企业业绩/推广形式
  • 微小店网站建设比较好/安徽疫情最新情况
  • 湖南网站建设/指数函数图像及性质
  • 刷赞网站怎么做的/今日头条最新新闻消息
  • 南昌哪里有网站建设/正规seo排名多少钱
  • 森动网网站建设好吗/seo网络运营