PTA:分段统计

题干

给定各个分段统计的区间端点和待统计的一组数据,请统计每区间中数据的个数及其占比百分数。

输入格式:
第一行为一个正整数n(0<n<=100),表示分段区间的端点数,n个端点构成n-1个区间。其后的n个整数按升序给出,分别表示区间的端点值,相邻的两个端点构成一个“区间”,每个区间均为左闭右开区间。
接下来的一行中有一个正整数k(0<k<=1000),表示待统计数据的个数。
其后一行有k个正整数,表示待统计的数据。
数据之间空格分隔。

输出格式:
输出每个区间的数据个数和占比百分数。
请注意:
(1)最后一个区间也是左闭右开区间。
(2)每行输出中的第1个逗号为半角字符,第2个逗号为全角字符,左右括号为半角字符。

输入样例:
6
0 60 70 80 90 100
20
0 59 60 61 65 69 70 70 71 72 75 78 79 80 81 83 85 89 90 100
输出样例:
区间[0,60)有2个数据,占比10.00%
区间[60,70)有4个数据,占比20.00%
区间[70,80)有7个数据,占比35.00%
区间[80,90)有5个数据,占比25.00%
区间[90,100)有1个数据,占比5.00%

解答过程

#include <stdio.h>
int main() {int n, k;scanf("%d", &n);int intervals[n];for (int i = 0; i < n; ++i) {scanf("%d", &intervals[i]);}scanf("%d", &k);int data[k];for (int i = 0; i < k; ++i) {scanf("%d", &data[i]);}int counts[n];for (int i = 0; i < n; ++i) {counts[i] = 0;}for (int i = 0; i < k; ++i) {for (int j = 0; j < n - 1; ++j) {if (data[i] >= intervals[j] && data[i] < intervals[j + 1]) {counts[j]++;break;}}}for (int i = 0; i < n - 1; ++i) {float percentage = (float)counts[i] / k * 100;printf("区间[%d,%d)有%d个数据,占比%.2f%%\n", intervals[i], intervals[i + 1], counts[i], percentage);}return 0;
}

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

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

相关文章

QT Widget - 随便画个圆

简介 实现在界面中画一个圆, 其实目的是想画一个LED效果的圆。代码 #include <QApplication> #include <QWidget> #include <QPainter> #include <QColor> #include <QPen>class LEDWidget : public QWidget { public:LEDWidget(QWidget *pare…

从零开发短视频电商 OpenSearch/Elasticsearch 聚合操作

文章目录 文本字段上的聚合通用聚合结构嵌套聚合聚合类型指标聚合平均值/求和等基数百分位统计汇总热门点击值计数 桶聚合日期直方图直方图范围聚合词语聚合 OpenSearch不仅仅是用于搜索的工具。聚合使您能够利用OpenSearch强大的分析引擎分析数据并从中提取统计信息。 聚合的用…

机器学习 | SVM支持向量机

欲穷千里目&#xff0c;更上一层楼。 一个空间的混乱在更高维度的空间往往意味着秩序。 Machine-Learning: 《机器学习必修课&#xff1a;经典算法与Python实战》配套代码 - Gitee.com 1、核心思想及原理 针对线性模型中分类两类点的直线如何确定。这是一个ill-posed problem。…

从零开始实现分布式服务系统

文章目录 开发前言分布式模型系统图解注册中心模块基础服务模块被依赖的服务模块&#xff08;日志服务&#xff09;服务模块&#xff08;访问服务&#xff09;运行效果开发总结 开发前言 分布式系统具有高可靠性、高性能、可扩展性、灵活性、数据共享、可靠性和地理分布等优点…

【.NET Core】特性(Attribute)详解

【.NET Core】特性&#xff08;Attribute&#xff09;详解 文章目录 【.NET Core】特性&#xff08;Attribute&#xff09;详解一、概述二、编写自定义属性2.1 自定义特性的主要步骤2.2 应用AttributeUsageAttributeAttributeTargets 成员Inherited属性AllowMultiple属性 三、声…

【计算机网络】TCP协议——3. 可靠性策略效率策略

前言 TCP是一种可靠的协议&#xff0c;提供了多种策略来确保数据的可靠性传输。 可靠并不是保证每次发送的数据&#xff0c;对方都一定收到&#xff1b;而是尽最大可能让数据送达目的主机&#xff0c;即使丢包也可以知道丢包。 目录 一. 确认应答和捎带应答机制 二. 超时重…

小信砍柴的题解

目录 原题描述&#xff1a; 时间&#xff1a;1s 空间&#xff1a;256M 题目描述&#xff1a; 输入格式&#xff1a; 输出格式&#xff1a; 样例1输入&#xff1a; 题目大意&#xff1a; 主要思路&#xff1a; 注意事项&#xff1a; 总代码&#xff1a; 原题描述&#…

计网01 计算机网络基础

一、计算机网络基本概念 1、什么是计算机网络 网络&#xff1a;由两台或多台计算机通过网络设备串联&#xff08;网络设备通过传输介质串联&#xff09;而形成的网络网络设备&#xff1a;计算机、路由交换、防火墙、上网行为管理等传输介质&#xff1a;双绞线&#xff08;网线…

汇编语言学习(2)

更好的阅读体验&#xff0c;请点击 YinKai’s Blog。 基本语法 汇编程序可以分为三个部分&#xff1a; 数据部分&#xff08;data section&#xff09;未初始化数据部分&#xff08;bss section&#xff09;文本部分&#xff08;text section&#xff09; data 部分 ​ 数据…

微服务——服务异步通讯(MQ高级)

MQ的一些常见问题 消息可靠性 生产者消息确认 返回ack&#xff0c;怎么感觉这么像某个tcp的3次握手。 使用资料提供的案例工程. 在图形化界面创建一个simple.queue的队列&#xff0c;虚拟机要和配置文件里面的一样。 SpringAMQP实现生产者确认 AMQP里面支持多种生产者确认的类…

【华为】文档中命令行约定格式规范(命令行格式规范、命令行行为规范、命令行参数格式、命令行规范)

文章目录 命令行约定格式**粗体&#xff1a;命令行关键字***斜体&#xff1a;命令行参数*[ ]&#xff1a;可选配置{ x | y | ... } 和 [ x | y | ... ]&#xff1a;选项{ x | y | ... }* 和 [ x | y | ... ]*&#xff1a;多选项&<1-n>&#xff1a;重复参数#&#xff…

xtu oj 1375 Fabonacci

题目描述 小明非常喜欢Fibonacci数列&#xff0c;数列为 f11,f22,fnfn−1fn−2。 小明想知道对于一个整数n&#xff0c;使得nfifjfk的组合有多少种&#xff1f; 比如5113 或者 5122,有2种。注意 122 和 212 被认为是同一种。 输入 第一行是一个整数T(1≤T≤1000)&#xff0c…

kill编译异常处理

当kill编译时出现如下警告 Build target Target 1 linking... *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESSSEGMENT: ?PR?_LCD_SHOWCHAR?LCD1602 *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESSSEGMENT: ?PR?_LCD_SHOWSTRING?LCD…

SpringSecurity 手机号登录

一、工作流程 1.向手机发送验证码&#xff0c;第三方短信发送平台&#xff0c;如阿里云短信。 2.手机获取验证码后&#xff0c;在表单中输入验证码。 3.使用自定义过滤器​SmsCodeValidateFilter​。 4.短信校验通过后&#xff0c;使用自定义手机认证过滤器​SmsCodeAuthentic…

【并发编程】线程基础

目录 1、线程基础 1.1基本概念 1.1.1 进程与线程 1.1.1.2 什么是线程 1.1.1.3 两者间的联系和区别 1.1.2 多线程 1.1.2.1 什么是多线程 1.1.2.2 多线程的局限 1.1.3串行,并行,并发 1.1.3.1 什么是串行 1.1.3.2 什么是并行 1.1.3.3 什么是并发 1.1.3.4 区别和联系…

UE4/UE5 日志插件(基于spdlog)

1 解决问题 对于高频日志序列化到本地的需求&#xff0c;spdlog肯定完美满足。 源码地址&#xff1a;https://github.com/gabime/spdlog 博主下载的版本为 spdlog-1.12.0&#xff0c;各位大佬可以根绝自己爱好选择。 2 过程介绍 大概目录&#xff1a; SpdlogLibC目录下是对…

Qt/C++音视频开发60-坐标拾取/按下鼠标获取矩形区域/转换到视频源真实坐标

一、前言 通过在通道画面上拾取鼠标按下的坐标&#xff0c;然后鼠标移动&#xff0c;直到松开&#xff0c;根据松开的坐标和按下的坐标&#xff0c;绘制一个矩形区域&#xff0c;作为热点或者需要电子放大的区域&#xff0c;拿到这个坐标区域&#xff0c;用途非常多&#xff0…

C语言之文件操作(下)

C语言之文件操作&#xff08;下&#xff09; 文章目录 C语言之文件操作&#xff08;下&#xff09;1. 文件的顺序读写1.1 文件的顺序读写函数1.1.1 字符输入/输出函数&#xff08;fgetc/fputc&#xff09;1.1.2 ⽂本⾏输⼊/输出函数&#xff08;fgets/fputs&#xff09;1.1.3 格…

工业应用新典范,飞凌嵌入式FET-D9360-C核心板发布!

来源&#xff1a;飞凌嵌入式官网 当前新一轮科技革命和产业变革突飞猛进&#xff0c;工业领域对高性能、高可靠性、高稳定性的计算需求也在日益增长。为了更好地满足这一需求&#xff0c;飞凌嵌入式与芯驰科技&#xff08;SemiDrive&#xff09;强强联合&#xff0c;基于芯驰D9…

vue3.0基础

1. setup函数 vue单页面使用到的变量和方法都定义在setup函数中,return后才能被页面引用 export default {setup(){const name 张三const person {name,age:30}function goWork(){consle.log(工作)}return {name,person,goWork}} } 注意&#xff1a;直接定义的变量修改不会…