首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
建设道路
8条解析
开通博客写题解
Ke2sen
发表于 2020-04-19 07:08:14
思路 通过读题我们很容易看出他就是让我们求这么一个东西: 我们把后边的完全平方公式展开就是: 显然我们还可以把 提出来 显然后边的 和我们可以提前用前缀和处理 我们用sum[i]表示对a[i]数组的前缀和,用sum2表示对的前缀和 那么原来的式子就能化成: 最后的时候注意取膜就行了 code
展开全文
白色L号谢谢
发表于 2020-04-18 23:15:07
Cometoj出过这题。。考虑单个点的贡献(a[i] - a[x]) * (a[i] - a[x]) = a[i] * a[i] - 2 * a[i] * a[x] + a[x] * a[x]所以里面一共就有(n - 1)个a[i]的平方以及除了a[i]外其他所有数的平方,中间这部分减法就是2 *
展开全文
VoidJackLee
发表于 2020-04-18 22:49:44
分析 根据题意,我们可以得出是要求两两数字之间的差值的平方,由于数据很多,的暴力是肯定不行的。 那么我们只能写一个O(n)的算法,所以会想到求前缀和。 求解 这边由于都是差值,所以得进行一个转化,使得他成为前缀和的形式。 先排序,再两两做差即可。 int n; scanf("%d",&n);
展开全文
中等人
发表于 2020-04-20 15:24:50
通俗易懂https://blog.csdn.net/qq_45810570/article/details/105617824
pphkaa
发表于 2020-04-21 15:58:47
(a[i] - a[x]) * (a[i] - a[x]) = a[i] * a[i] - 2 * a[i]* a[x] + a[x] * a[x]所以里面一共就有(n - 1)个a[i]的平方,中间这部分减法就是2 * (sum - a[i]) * a[i], sum即是所有数字的和。然后举个简单
展开全文
wenyisir
发表于 2020-04-19 13:21:59
题目要我们求得答案为 我们令由于 矩阵的对称性知 #include<cstdio> #include<iostream> using namespace std; typedef long long ll; const int mod =1e9+7; ll a[50
展开全文
秃头小白
发表于 2020-08-13 15:58:17
题目链接 https://ac.nowcoder.com/acm/contest/5158/J 题目分析 意思很简单,给出每个城市的价值,求任意俩城市价值差值的平方和。看到数据你就应该明白,不能暴力啊,这样比较简单的要求自然会想到公式变形。暴力时间复杂度:O(n*(n-1)/2) 解题思路 先枚举写
展开全文
Meul
发表于 2020-04-19 01:20:42
Question Solution 后缀和优化到求一个后缀和优化一下,按公式做就好了。 Code #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int>
展开全文
查看本题
查看本题讨论
相关比赛
5158-牛客小白月赛24
进入比赛
5494-南昌航空大学第四次新生练习赛
进入比赛
5588-牛客小白月赛24(重现赛)@我是一只傻狍子
进入比赛
6250-牛客小白月赛24(重现赛)@极为沙雕的大奶熊礽荣
进入比赛
6251-牛客小白月赛24(重现赛)@极为沙雕的大奶熊礽荣
进入比赛
等你来战
查看全部
牛客周赛 Round 98
报名截止时间:2025-06-29 21:00
牛客小白月赛119
报名截止时间:2025-07-04 21:00
牛客周赛 Round 99
报名截止时间:2025-07-06 21:00
牛客练习赛142
报名截止时间:2025-07-11 21:30
牛客周赛 Round 100
报名截止时间:2025-07-13 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题