【每日一练 基础题】[蓝桥杯 2022 省 A] 求和

[蓝桥杯 2022 省 A] 求和

暴力破解会超时,用因式分解的平方差公式

a2+ 2ab+b2=(a+)2

a²-2ab+b2=(a-b)2

输出整数=((a1+a2+a3+...+an)²-a1²-a2²-a3²-...-an²)/2

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        long n = scanner.nextLong();
        long mul = 0, sum = 0;

        for (long i = 1; i <= n; i++) {
            long x = scanner.nextLong();
            sum += (x * x);
            mul += x;
        }

        System.out.println((mul * mul - sum) / 2);
    }
}
相关推荐
aini_lovee1 小时前
多目标粒子群优化(MOPSO)双适应度函数MATLAB实现
人工智能·算法·matlab
消失的旧时光-19431 小时前
Spring Boot 工程化进阶:统一返回 + 全局异常 + AOP 通用工具包
java·spring boot·后端·aop·自定义注解
yong99901 小时前
图像融合与拼接:完整MATLAB工具箱
算法·计算机视觉·matlab
春风不语5051 小时前
深入理解主成分分析(PCA)
算法
NE_STOP1 小时前
Redis--发布订阅命令和Redis事务
java
apollowing1 小时前
启发式算法WebApp实验室:从搜索策略到群体智能的能力进阶(二十二)
算法·启发式算法·web app
PAC_3Dame1 小时前
记一次真实的线上OOM
java
晚枫歌F1 小时前
最小堆定时器
数据结构·算法
SunnyDays10111 小时前
如何在Java中将Word文档转换为图像(JPEG、PNG或SVG)
java
Lumos_7772 小时前
Linux -- 线程
java·jvm·算法