【每日一练 基础题】[蓝桥杯 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);
    }
}
相关推荐
立志成为大牛的小牛4 小时前
数据结构——五十二、散列函数的构造(王道408)
数据结构·笔记·程序人生·考研·算法
机灵猫4 小时前
java锁:从 Mark Word 锁升级到 AQS
java·开发语言
希望有朝一日能如愿以偿5 小时前
力扣每日一题:可被三整除的最大和
数据结构·算法·leetcode
闲猿类5 小时前
嵌入式第九天学习
linux·c语言·学习·算法·嵌入式
轻微的风格艾丝凡5 小时前
光伏 MPPT 算法介绍
人工智能·算法·光伏
chxii5 小时前
mybatis-spring 浅析
java·spring·mybatis
梅梅绵绵冰5 小时前
springmvc文件上传
java·开发语言
龙华5 小时前
Maven多仓库/依赖配置
java·maven
天道佩恩5 小时前
MapStruct转换实体
java·后端
Boop_wu5 小时前
[Java 面试] 多线程1
java·开发语言