CCF-Csp算法能力认证,202206-1归一化处理(C++)含解析

前言

推荐书目,在这里推荐那一本《算法笔记》(胡明),需要PDF的话,链接如下

「链接:https://pan.xunlei.com/s/VNvz4BUFYqnx8kJ4BI4v1ywPA1?pwd=6vdq# 提取码:6vdq”复制这段内容后打开手机迅雷App,查看更方便」

希望有大神能够提供改良意见,敬礼!

---------------------------------------------------------------------------------------------------------------------------------

题目

【题目描述】

【输入格式】

【输出格式】

【样例 1 输入】

7
-4 293 0 -22 12 654 1000

【样例 1 输出】

-0.7485510379073613
0.04504284674812264
-0.7378629047806881
-0.7966476369773906
-0.7057985054006686
1.0096468614303775
1.9341703768876082
 

【样例 1 解释】

【样例 2 输入】

【样例 2 输出】

【样例 2 解释】

【子任务】

思路分析:

本题的思想比较简单,直接按照公式计算就可以,一开始还误以为是每一个f(i)都要单独计算i之前的标准差和平均值,后来意识到只需要算整体的就可以。

误差的话一般采用长数据类型就可以避免了,理论上计算过程中间存储的点越少越精确,但是为了思路清晰用了很多中间变量。

标准差使用pow函数就可以计算。

代码如下:

#include <bits/stdc++.h>//万能头文件 
using namespace std;
//运行结果为nan  表示  not a number  一般都是运算出了逻辑错误,比如除了0int main() {int n=0;//n是数字的个数(数组长度) long double result=0;//存储结果 //const int N=10000;cin>>n; long double b[n]; //数组,存储数据 long double sum=0.0;//和for(int i=0;i<n;i++){//输入 cin>>b[i];	sum+=b[i];}long double average=sum/n;//计算出平均值long double fang=0.0;//方 for(int i=0;i<n;i++){fang+=(b[i]-average)*(b[i]-average);}long double dfang=fang/n;//计算出方差 long double dfangdown=pow(dfang,0.5);for(int i=0;i<n;i++){result=(b[i]-average)/dfangdown;//计算出结果 cout<<result<<endl; }	//关于浮点数比较   《算法笔记》p75有介绍 return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/681732.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

马化腾用“不负众望”,来评价视为“全村希望”的视频号

我是王路飞。 2023年的视频号&#xff0c;给了腾讯足够的惊喜。 去年一年&#xff0c;视频号电商GMV实现近3倍增长&#xff08;约为1200亿&#xff5e;1500亿&#xff09;。2023年三季度&#xff0c;视频号总播放量同比增长超50%&#xff1b; 2023年视频号供给数量同比增长超…

怎么用git在暂存区(stage)中移除不需要提交(commit)的文件?

2024年5月9日&#xff0c;周四上午 非常简单&#xff0c;用下面这条命令就可以了 git rm --cached <file>注&#xff1a;这条命令不会把文件从文件夹中删除&#xff0c;只会把文件从暂存区中移除出去 实战

企业微信hook接口协议,ipad协议http,设置是否自动同意

设置是否自动同意 参数名必选类型说明uuid是String每个实例的唯一标识&#xff0c;根据uuid操作具体企业微信 请求示例 {"uuid":"bc4800492083fdec4c1a7e5c94","state":1 //1 是需要验证同意&#xff08;需要手动点击同意&#xff09; 0关闭验证…

鸿蒙开发-ArkTS语言-容器-非线性容器

鸿蒙开发-UI-web 鸿蒙开发-UI-web-页面 鸿蒙开发-ArkTS语言-基础类库 鸿蒙开发-ArkTS语言-并发 鸿蒙开发-ArkTS语言-并发-案例 鸿蒙开发-ArkTS语言-容器 文章目录 前言 一、非线性容器 1.HashMap 2.HashSet 3.TreeMap 4.TreeSet 5.LightWeightMap 6.LightWeightSet 7.P…

ICode国际青少年编程竞赛- Python-2级训练场-for循环练习2

ICode国际青少年编程竞赛- Python-2级训练场-for循环练习2 1、 for i in range(5):Dev.step(9 - i * 2)Dev.turnLeft()2、 for i in range(3):Spaceship.step(i 1)Spaceship.turnRight()Spaceship.step(i 1)Spaceship.turnLeft()3、 for i in range(4):Dev.step(10 - i…

对象复制工具Orika,快速实现两个java对象的属性赋值

一、maven依赖引入orika <dependency><groupId>ma.glasnost.orika</groupId><artifactId>orika-core</artifactId><version>1.5.4</version></dependency>二、Orika工具类 import io.swagger.annotations.ApiModel; import io…

1707jsp电影视频网站系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 校园商城派送系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统采用web模式&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数…

3d粒子系统可以做什么模型?---模大狮模型网

在3D建模与动画领域&#xff0c;粒子系统是一种强大的工具&#xff0c;能够模拟出各种粒子效果&#xff0c;如火焰、水流、烟雾等&#xff0c;为场景增添了生动与真实感。然而&#xff0c;除了这些传统的应用外&#xff0c;3D粒子系统还有许多其他令人惊叹的用途。在本文中&…

Bert 实现情感分析任务

BERT Bert &#xff08;Bidirectional Encoder Representations from Transformers&#xff09;预训练模型是 Google 2018开源的自然语言模型&#xff0c;主要有以下特点。 像它名字一样&#xff0c;BERT最显著的特点是其能够为文本中的每个标记考虑双向上下文。与传统的基于…

【漏洞复现】GB28181摄像头管理平台api接口处存在未授权漏洞

免责声明&#xff1a;文章来源互联网收集整理&#xff0c;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;所产生的一切不良后果与文章作者无关。该…

html--瀑布效果

<!doctype html> <html> <head> <meta charset"utf-8"> <title>瀑布效果</title><style> body {background: #222;color: white;overflow:hidden; }#container {box-shadow: inset 0 1px 0 #444, 0 -1px 0 #000;height: 1…

如果你这样使用电路仿真软件,你就无敌了!

在电子设计领域&#xff0c;电路仿真软件如同一把锋利的宝剑&#xff0c;掌握它&#xff0c;你就能在复杂的电子世界中游刃有余。今天&#xff0c;就让我们一起探讨如何高效利用电路仿真软件&#xff0c;让你在电子设计领域所向披靡&#xff01; 一、熟悉软件界面与基础操作 …