【逐日一练 根本题】[蓝桥杯 2022 省 A] 求和

[复制链接]
发表于 2025-12-5 04:05:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
[蓝桥杯 2022 省 A] 求和
暴力破解会超时,用因式分解的平方差公式
   a2+ 2ab+b2=(a+)2
a²-2ab+b2=(a-b)2
  输出整数=((a1+a2+a3+…+an)²-a1²-a2²-a3²-…-an²)/2
  1. import java.util.Scanner;
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         Scanner scanner = new Scanner(System.in);
  5.         long n = scanner.nextLong();
  6.         long mul = 0, sum = 0;
  7.         for (long i = 1; i <= n; i++) {
  8.             long x = scanner.nextLong();
  9.             sum += (x * x);
  10.             mul += x;
  11.         }
  12.         System.out.println((mul * mul - sum) / 2);
  13.     }
  14. }
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表