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;
}
相关推荐
小 黄 鸡18 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
无敌贵点大王1 天前
嵌入式软件面试经(自用)
c语言·stm32·单片机·学习·mongodb·面试·职场和发展
程序 代码狂人1 天前
数据开发面试【问答完整版|带深挖追问 + 扩展回答】
面试·职场和发展
浅念-1 天前
动态规划:线性DP——多状态DP与子数组专题笔记
c++·笔记·算法·leetcode·职场和发展·动态规划·力扣
天真小巫1 天前
2026.10.14总结
职场和发展
鸥梨菌Honevid1 天前
UVM 面试高频:uvm_test_top 与 uvm_config_db 路径机制全解析
数据库·面试·职场和发展
Interview Aid1121 天前
Capital One Interview 完整指南:招聘流程、OA 真题与技术面试准备
面试·职场和发展
虚无的纽扣1 天前
【力扣刷题】第四天:三数之和、四数之和
算法·leetcode·职场和发展
_不会dp不改名_1 天前
leetcode_3273 数位平方和的最大值
算法·leetcode·职场和发展
考研保研资料分享1 天前
车辆与机械保研经验合辑:西交、浙大预推免与专业笔试面试复盘
面试·职场和发展