LQ0014 求和【思维】

news/2024/7/7 19:39:06

题目出处:蓝桥杯2022初赛

题目描述
给定n个整数a[1],a[2],…,a[n],求两两相乘再相加的和,即
S=a[1]·a[2]+a[1]·a[3]+…+a[1]·a[n]+a[2]·a[3]+…+a[2]·a[n]+…+a[n-1]·a[n]

输入格式
第一行为正整数n,第二行为n个整数。
30%的数据:2≤n≤1000,1≤a[i]≤100。
100%的数据:2≤n≤200000,1≤a[i]≤1000。

输出格式
输出一个数字表示答案S。

输入样例
4
1 3 6 9

输出样例
117

问题分析
给定n个数,求部分两两相乘问题,需要找出其规律来,算起来就简单了。
先求出n个整数之和,再求出这n个整数的平方和,然后用公式算一下就好了。
具体的计算方法见程序代码。
求和后数会变得比较大,所以要用long long类型。

AC的解题代码如下:

/* LQ0014 求和 */

#include <stdio.h>

int main()
{
    int n, a;
    long long sum = 0, sum1 = 0;

    scanf("%d", &n);
    for (int i = 1; i <= n; i++) {
        scanf("%d", &a);
        sum += a;
        sum1 += a * a;
    }

    printf("%lld\n", (sum * sum - sum1) / 2);

    return 0;
}

http://lihuaxi.xjx100.cn/news/19231.html

相关文章

C++学习日记——宏函数和内联函数

学习目标 学习宏函数和内联函数的区别和使用 学习内容 宏函数&#xff1a; 使用宏定义定义出的函数&#xff0c;并不是真正意义上的函数 注意事项&#xff1a; 要保证运算的完整性 使用宏函数存在一定的缺陷 使用场景&#xff1a;频繁调用的短小的函数 优点&#xff1a; 不是…

Spring Boot集成第三方登录之微博登录

Spring Boot集成第三方登录之微博登录准备工作网站接入开发者信息认证创建应用流程分析引导授权用户用户授权授权成功换取Access TokenHTTP客户端使用Access Token请求相关接口根据用户ID获取用户信息获取用户的粉丝列表Spring Boot集成微博登录添加依赖封装Token等信息创建Log…

少年,不知道怎么在安卓中使用 PaddleOCR ?看我怎么把它二次封装成只需要两行代码即可使用

前言 什么是 PaddleOCR 根据官方的介绍&#xff1a; Awesome multilingual OCR toolkits based on PaddlePaddle (practical ultra lightweight OCR system, support 80 languages recognition, provide data annotation and synthesis tools, support training and deployme…

银行 IT 架构到底要不要云化?

【摘要】银行到底是继续采用集中式架构还是全部更换成分布式架构,是继续保持现有传统架构还是改造成基于云计算的全新架构?本文用较长篇幅全面分析了集中式架构(非云化架构)和分布式架构(云化架构)的特点、优缺点,并提出了转型思路,从技术和管理两个角度给出了转型路径…

FinOps能力成熟度模型启动,灵雀云助力云原生降本增效标准制定

9月16日&#xff0c;在2022中国数据中心市场年会“降本增效分论坛”上&#xff0c;《云原生FinOps能力成熟度模型》标准正式启动&#xff0c;作为FinOps产业标准工作组首批发起成员和云原生技术领域的唯一代表企业&#xff0c;灵雀云出席并参与授牌。 随着云计算的深入&#xf…

【甄选靶场】Vulnhub百个项目渗透——项目十七:brainpan-1(windows缓冲区溢出,sudo提权)

Vulnhub百个项目渗透 Vulnhub百个项目渗透——项目十七&#xff1a;brainpan-1&#xff08;windows缓冲区溢出,sudo提权&#xff09; &#x1f525;系列专栏&#xff1a;Vulnhub百个项目渗透 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &…

Android修行手册 - TableLayout学习

往期文章分享点击跳转>《导航贴》- Unity手册&#xff0c;系统实战学习点击跳转>《导航贴》- Android手册&#xff0c;重温移动开发 &#x1f449;关于作者 众所周知&#xff0c;人生是一个漫长的流程&#xff0c;不断克服困难&#xff0c;不断反思前进的过程。在这个过…

JavaScript如何查找和访问HTML页面中的HTML元素

JavaScript如何查找和访问HTML页面中的HTML元素 HTML语言中&#xff0c;全部是由标签&#xff08;标记、tag&#xff09;组成的。在浏览器内部解析HTML标记时&#xff0c;会转换为成具有特定结构的HTML文档对象模型&#xff0c;这个对象模型简称为DOM&#xff08;Document Obje…