AcWing 4509. 归一化处理
原题链接
简单
作者:
李知恩学算法
,
2023-01-11 15:43:38
,
所有人可见
,
阅读 149
输出16位哈
我感觉我题解还可以
#include <bits/stdc++.h>
using namespace std;
int a[1010];
int main()
{
int n;
double sum = 0,pj=0;//总和sum,pj是平均值
double z=0,fc = 0; //fc是方差
//double有效位就是16位与题目刚好一样
cin >> n;
for(int i = 1; i <= n; i ++)
{
cin >> a[i];
sum += a[i];
}
pj = sum / n;
for(int i = 1; i <= n; i ++)
{
z += ((a[i] - pj) * (a[i] - pj));
}
fc = z / n;
for(int i = 1; i <= n; i ++)
{
printf("%.16lf\n", (a[i] - pj) / sqrt(fc));//用printf输出16位 (%lf浮点数)
}
return 0;
}