week2-[循环结构]找出正数

题目描述

给定 NNN 个整数A1,A2,…,ANA_1,A_2,\ldots,A_NA1,A2,,AN。请求出这 NNN 个数中有多少个数是正数,并求出这些正数的平均值。如果 A1,A2,…,ANA_1,A_2,\ldots,A_NA1,A2,,AN 不存在正数,那么输出 “None”(输出时不需要输出引号)。

输入格式

读入包括 222 行。第一行只有 111 个整数 NNN,表示数的个数。第二行包括 NNN 个整数 A1,A2,…,ANA_1,A_2,\ldots,A_NA1,A2,,AN

输出格式

输出只有 111 行。如果 A1,A2,…,ANA_1,A_2,\ldots,A_NA1,A2,,AN 不存在正数,那么输出 “None”(输出时不需要输出引号)。如果A1,A2,…,ANA_1,A_2,\ldots,A_NA1,A2,,AN 存在至少一个正数,那么输出用恰好一个空格隔开的 222 个数,第一个数表示正数的个数,第二个数表示正数的平均值(正数的平均值四舍五入保留 333 位小数输出)。

样例 #1

样例输入 #1

5
-5 -3 0 -8 -100

样例输出 #1

None

样例 #2

样例输入 #2

6
5 -2 8 3 -4 1

样例输出 #2

4 4.250

样例 #3

样例输入 #3

5
1 2 3 4 5

样例输出 #3

5 3.000

提示

样例解释1

−5,−3,0,−8,−100-5,-3,0,-8,-1005,3,0,8,100 中不存在正数,根据题目要求输出 “None”。

样例解释2

5,−2,8,3,−4,15,-2,8,3,-4,15,2,8,3,4,1 中的正数为 5,8,3,15,8,3,15,8,3,1444 个数,因此输出正数的个数 444 与正数的平均值 5+8+3+14=4.250\dfrac{5+8+3+1}{4}=4.25045+8+3+1=4.250

样例解释3

1,2,3,4,51,2,3,4,51,2,3,4,5 中所有数都是正数,因此输出正数的个数 555 与正数的平均值 1+2+3+4+55=3.000\dfrac{1+2+3+4+5}{5}=3.00051+2+3+4+5=3.000

数据范围

对于所有数据,1≤N≤100,−10000≤A,B≤100001 \le N \le 100, -10000 \le A,B \le 100001N100,10000A,B10000

1. 阅读题目

  • 输入:
    • 第 1 行:整数 NNN(表示有多少个数)。
    • 第 2 行:NNN 个整数 A1,A2,…,ANA_1,A_2,\ldots,A_NA1,A2,,AN
  • 输出:
    • 如果没有正数 → 输出 "None"
    • 如果有正数 → 输出两个数:
      1. 正数的个数
      2. 正数的平均值(四舍五入保留 3 位小数)

2. 分析问题

  • 遍历所有 NNN 个数:
    • 统计正数的数量 cnt
    • 累加正数的和 sum
  • 判断:
    • 如果 cnt == 0 → 输出 "None"
    • 否则 → 输出 cnt平均值 = sum / cnt
  • 平均值需要 四舍五入保留 3 位小数
    • 在 C++ 中可以用 cout << fixed << setprecision(3) 来处理。
  • 时间复杂度 O(N)O(N)O(N),空间复杂度 O(1)O(1)O(1)

3. C++ 代码实现

#include <iostream>
#include <iomanip>
using namespace std;int main() {ios::sync_with_stdio(false);cin.tie(NULL);int N;cin >> N;int cnt = 0;       // 正数个数long long sum = 0; // 正数和(防止溢出,虽然题目范围也不会溢出)for (int i = 0; i < N; i++) {int x;cin >> x;if (x > 0) {cnt++;sum += x;}}if (cnt == 0) {cout << "None\n";} else {double avg = (double)sum / cnt;cout << cnt << " " << fixed << setprecision(3) << avg << "\n";}return 0;
}

✅ 总结:

  • 用循环统计 → cntsum
  • 分支判断 → 有正数输出结果,没有输出 "None"
  • 平均值格式化 → fixed << setprecision(3) 保留 3 位小数。

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

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

相关文章

Android平台RTSP播放器选型指南:从开源方案到跨平台低延迟专业SDK

1. 引言&#xff1a;Android RTSP 播放的三条路径 在 Android 平台实现 RTSP 播放&#xff0c;看似只是“能播起来”的问题&#xff0c;实际上是一个涉及延迟、稳定性、解码性能、协议兼容、工程可控性等多维指标的综合选型问题。 从安防监控、教育互动&#xff0c;到单兵指挥…

Linux安装及远程连接知识实践

文章目录一、VMware创建虚拟机故障及解决汇总1. 镜像下载2. 镜像选择安装3.安装VMware遇到的相关问题4. VMware操作系统的安装4.1 选择系统的引导4.2 修改网卡名为eth0的形式(和CentOS7以前保持一致)4.3 进入下一步安装界面4.4 进入到安装摘要页面(INSTALLATION SUMMARY)4.5 配…

F Core 批量写与“软实时”一致性:ExecuteUpdate / COPY / SqlBulkCopy 的取舍与事务权衡

EF Core 批量写与“软实时”一致性&#xff1a;ExecuteUpdate / COPY / SqlBulkCopy 的取舍与事务权衡 ✨ &#x1f4da; 目录EF Core 批量写与“软实时”一致性&#xff1a;ExecuteUpdate / COPY / SqlBulkCopy 的取舍与事务权衡 ✨1. 术语与目标 &#x1f9ed;2. 技术选型总览…

基于PSO粒子群多目标优化的微电网调度算法matlab仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序 4.系统原理简介 4.1 改进粒子群算法 4.2 分布式电源与储能模型公式 4.3 多目标函数 5.参考文献 6.完整工程文件 1.课题概述 微电网优化调度的核心是在满足系统约束&#xff08;如功率平衡、设备出力限制等&#xff09;的前…

Spring AI ChatClient集成Deepseek

Spring AI ChatClient集成Deepseek 下文将简述如何通过spring ai集成deepseek实现智能对话。在开始之前你需要在deepseek官网申请一个apikey,并设置到系统变量中&#xff0c;保障安全性。 ChatModel 在集成deepseek前&#xff0c;我们先要了解一个chat model&#xff0c;chat m…

Azure微软云内网接入问题

1. 域名解析失败 azure需要给ClientSecretCredentialBuilder和AzureResourceManager都配置HTTP 代理,但还是会域名解析失败,netty会调用InetAddress.getByName解析域名.最终只能在hosts文件写死host和ip映射关系 2. netty版本不匹配,导致报错netty某个方法找不到 azure只用引入…

【IDEA】设置Debug调试时调试器不进入特定类(Spring框架、Mybatis框架)

问题 以Ruoyi-Vue项目为例&#xff0c;以Debug方式启动项目&#xff0c;在com.ruoyi.web.controller.system.SysUserController#list()方法中的userService.selectUserList(user)处打上断点&#xff0c;访问[系统管理–用户管理]页面&#xff0c;程序就会执行到该断点处此时按下…

OpenCV 视频处理全解析

OpenCV 视频处理全解析&#xff1a;从基础操作到高级应用​在计算机视觉领域&#xff0c;视频处理是一个核心且广泛应用的技术方向。无论是安防监控、自动驾驶还是短视频特效&#xff0c;都离不开对动态视频流的智能分析与处理。OpenCV 作为最流行的开源计算机视觉库&#xff0…

java如何使用正则提取字符串中的内容

在Java中使用正则表达式提取字符串内容&#xff0c;主要通过java.util.regex包中的Pattern和Matcher类实现。以下是详细步骤和示例&#xff1a;1. 基础流程 import java.util.regex.Matcher; import java.util.regex.Pattern;public class RegexExample {public static void ma…

Baumer高防护相机如何通过YoloV8深度学习模型实现行人跌倒的检测识别(C#代码UI界面版)

《------往期经典推荐------》 AI应用软件开发实战专栏【链接】 序号项目名称项目名称11.工业相机 YOLOv8 实现人物检测识别&#xff1a;&#xff08;C#代码&#xff0c;UI界面版&#xff09;2.工业相机 YOLOv8 实现PCB的缺陷检测&#xff1a;&#xff08;C#代码&#xff0…

jetson orin nx(8G)烧录super系统实录

1. 说明 2. 下载新版发布包&#xff08;在PC上下载&#xff09; Jetson Linux Archive | NVIDIA Developer 安装的jetpack版本为6.2.1&#xff08;rev.2)对应的Jetson Linux 36.4.4 点击绿色区域的36.4.4>&#xff0c;进入下载页面&#xff0c;如下 点击Driver Package(B…

LeetCode算法日记 - Day 11: 寻找峰值、山脉数组的峰顶索引

目录 1. 寻找峰值 1.1 题目解析 1.2 解法 1.3 代码实现 2. 山脉数组 2.1 题目解析 2.2 解法 2.3 代码实现 1. 寻找峰值 162. 寻找峰值 - 力扣&#xff08;LeetCode&#xff09; 峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums&#xff0c;找到峰…

Cherryusb UAC例程对接STM32 SAI播放音乐和录音(下)=>USB+SAI+TX+RX+DMA控制WM8978播放和录音实验

1. 程序基本框架 整个程序框架, 与之前的一篇文章《Cherryusb UAC例程对接STM32内置ADC和DAC播放音乐和录音(中)>UACSTM32 ADCDAC实现录音和播放》基本一致, 只是这次将ADC和DAC替换成了SAI TX/RX。因此这里不再赘述了。2. sai_dma_wm8978_usb.c主程序的实现说明 在menuconf…

Docker运行python项目:使用Docker成功启动FastAPI应用

根据昨天成功使用阿里云镜像加速后&#xff0c;我是根据windows本地的python项目&#xff0c;直接传到了centos&#xff0c;然后再导入到docker里面&#xff0c;然后进行运行&#xff0c;主要是发现运行的时候&#xff0c;老是提示一些库的问题&#xff0c;还有就是一些python老…

PowerShell来关闭 Windows 安全中心

你可以使用 PowerShell 来关闭 Windows 安全中心的盾牌图标&#xff08;通知&#xff09;。以下是几种方法&#xff0c;包括禁用通知、关闭 Windows Defender&#xff08;不推荐&#xff09;或调整注册表。方法 1&#xff1a;禁用 Windows 安全中心通知&#xff08;推荐&#x…

基于深度学习的老照片修复系统

背景随着时间的推移&#xff0c;老照片可能会因褪色、损坏或曝光不当而影响其视觉质量。这些珍贵的影像承载着历史和回忆&#xff0c;但由于物理损耗&#xff0c;它们的观赏价值和可读性逐渐下降。为了恢复这些照片的清晰度和色彩&#xff0c;本项目采用深度学习与先进的图像处…

深入解析Tomcat目录结构

Apache Tomcat 是一个强大的 Servlet 容器,它不仅支持 Java Servlet 和 JSP 技术,还提供了丰富的功能来帮助开发者构建和部署动态的 Web 应用。为了更好地理解和使用 Tomcat,了解其文件结构和组成部分是至关重要的。本文将深入探讨 Tomcat 的目录结构及其各个组件的作用。 …

专题:2025抖音电商与微短剧行业研究报告|附150+份报告PDF汇总下载

原文链接&#xff1a;https://tecdat.cn/?p43595 当618大促的硝烟散去&#xff0c;抖音电商的生态分化愈发刺眼&#xff1a;服饰内衣以27.5%的份额稳坐头把交椅&#xff0c;而无数中小商家却在“流量荒”中挣扎。这场看似繁荣的盛宴里&#xff0c;平台规则如同无形的手&#x…

3.Ansible自动化之-编写和运行playbook

3.Ansible编写和运行 Playbook Playbook 介绍 如果把 Ansible 的ad-hoc命令比作 “一次性脚本”&#xff08;适合临时执行单个简单任务&#xff09;&#xff0c;那么Playbook就是 “可重复执行的程序”&#xff08;适合复杂、多步骤的管理流程&#xff09;。 举个例子&#…

Vue实时刷新,比如我提交审核,审核页面还需要点查询才能看到最新数据

refreshTimer: null,lastRefreshTime: null}; }, created() {console.log(组件创建&#xff0c;初始化数据...);this.loadLatestData();this.setupAutoRefresh(); }, activated() {// 当使用keep-alive时&#xff0c;组件激活时刷新数据console.log(组件激活&#xff0c;刷新数…