P8772 [蓝桥杯 2022 省 A] 求和

P8772 [蓝桥杯 2022 省 A] 求和 - 洛谷

题目描述

给定 n 个整数 a1​,a2​,...,an​,求它们两两相乘再相加的和,即

S=a1​⋅a2​+a1​⋅a3​+⋯+a1​⋅an​+a2​⋅a3​+⋯+an−2​⋅an−1​+an−2​⋅an​+an−1​⋅an​

输入格式

输入的第一行包含一个整数 n。

第二行包含 n 个整数 a1​,a2​,...,an​。

输出格式

输出一个整数 S,表示所求的和。请使用合适的数据类型进行运算。

输入输出样例

输入 #1

markdown

复制代码
4
1 3 6 9

输出 #1

markdown

复制代码
117

说明/提示

  • 对于 30% 的数据,1≤n≤1000,1≤ai≤1000。
  • 对于所有评测用例,1≤n≤2×105,1≤ai≤1000。

蓝桥杯 2022 省赛 A 组 C 题

思路:

前缀和模拟即可,记得开longlong

代码如下:

复制代码
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
typedef long long ll;
const ll N = 2e5+10;
ll a[N],n,cnt,pre[N];
int main() 
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n;
	for(ll i = 1 ; i <= n ; i++)
	{
		cin >> a[i];
		pre[i] = pre[i-1]+a[i];
	}
	ll sum = 0;
	for(ll i = 1 ; i <= n ; i++)
	{
		sum += a[i] * (pre[n] - pre[i]);
	}
	cout << sum;
	return 0;
}
相关推荐
三川6985 小时前
面试题目记录
面试·职场和发展
程序员杰哥5 小时前
性能测试详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·性能测试
让我上个超影吧6 小时前
【力扣76】最小覆盖子串
算法·leetcode·职场和发展
想进个大厂8 小时前
代码随想录day29 贪心03
算法·leetcode·职场和发展
橘颂TA10 小时前
【剑斩OFFER】算法的暴力美学——力扣 1020 题:飞地的数量
数据结构·c++·算法·leetcode·职场和发展·结构与算法
爱尔兰极光13 小时前
LeetCode热题100--两数之和
算法·leetcode·职场和发展
码农水水13 小时前
大疆Java面试被问:使用Async-profiler进行CPU热点分析和火焰图解读
java·开发语言·jvm·数据结构·后端·面试·职场和发展
YuTaoShao13 小时前
【LeetCode 每日一题】3650. 边反转的最小路径总成本
算法·leetcode·职场和发展
橘颂TA13 小时前
【剑斩OFFER】算法的暴力美学——力扣 1765 题:地图中的最高点
算法·leetcode·职场和发展·结构与算法