支援城市(数学展开式求和)
作者:互联网
这题枚举肯定爆;所以展开就知道了:
知道了这个 就知道怎么枚举了;直接跑一遍就AC;
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=1e5+50;
int main(){
ll n;
scanf("%lld",&n);
ll W[maxn],sum1=0,sum2=0;
for(int i=0;i<n;i++){
scanf("%lld",W+i);
sum2+=W[i];
}
for(int i=0;i<n;i++)sum1+=W[i]*W[i];
for(int i=0;i<n;i++){
if(i==n-1){
printf("%lld",sum1-2*W[i]*sum2+n*W[i]*W[i]);
}else{
printf("%lld ",sum1-2*W[i]*sum2+n*W[i]*W[i]);
}
}
return 0;
}
标签:求和,ll,枚举,long,sum2,展开式,int,maxn,支援 来源: https://blog.csdn.net/qq_44555205/article/details/99067893