CCF CSP 归一化处理

CSP 往期考试题练习

CCF CSP 归一化处理

开始准备CSP考试了,记录一下,防止懒惰

题目描述

在这里插入图片描述

输入格式

在这里插入图片描述

输出格式

在这里插入图片描述

样例

在这里插入图片描述

方法和思路

这道题,初看时,会发现是数学的方差标准差的知识。看到式子不要慌,只要数学上能理解这道题的步骤,基本就可以直接写。主要要求的过程中得有和、平均数、方差、标准差。如果不知道这些概念,建议百度搜索。
那么,这题就十分简单了。然后看输入输出要求,(1)如果是多组数据,可以选择结构体的方式(2)但这题每次的输入输出都是基于一组数据的,就可以简单粗暴地直接数组(注意n<1000)
同时,根据输入输出规则确定数据类型,就可以动手写了。
在写的过程中,可使用求平方、开平方函数。
此外,在最初写的过程,建议直接将样例写入函数,减少测试输入时间。

100分C++代码

#include<stdio.h>
#include<math.h>
#include <iostream>
using namespace std;
int main()
{
	int n,arr[1001];//7   -4 293 0 -22 12 654 1000
	double sum = 0;
	cin >> n;
	for (int i = 0; i < n; i++)
	{
		cin >> arr[i];
		sum += arr[i];
	}
	double avg = sum / n;
	double variance = 0;
	for (int i = 0; i < n; i++)
	{
		variance  += (arr[i] - avg) * (arr[i] - avg);
	}
	variance = variance / n;
	double fa = 0;
	for (int i = 0; i < n; i++)
	{
		double a = arr[i] - avg;
		fa = a / sqrt(variance);//不用考虑variance是否小于等于0,方差的性质
		printf("%f\n", fa);
	}
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大林不要掉头发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值