1012.数字分类- PAT乙级真题

2023-11-14

给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字:

  1. A​1​: 能被 5 整除的数字中所有偶数的和;
  2. A​2​: 将被 5 除后余 1 的数字按给出顺序进行交错求和;
  3. A3​: 被 5 除后余 2 的数字的个数;
  4. A​4​: 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位;
  5. A​5​: 被 5 除后余 4 的数字中最大数字。
输入格式:

每个输入包含 1 个测试用例。每个测试用例先给出一个不超过 1000 的正整数 N,随后给出 N 个不超过 1000 的待分类的正整数。数字间以空格分隔。

输出格式:

对给定的 N 个正整数,按题目要求计算 A1​​~A​5并在一行中顺序输出。数字间以空格分隔,但行末不得有多余空格。若其中某一类数字不存在,则在相应位置输出 N。

输入样例1:

13 1 2 3 4 5 6 7 8 9 10 20 16 18

输出样例1:

30 11 2 9.7 9

输入样例2:

8 1 2 4 5 6 7 9 16

输出样例2:

N 11 2 N 9

解题思路:对每一类分支分别进行计数和相应的处理,按要求输出即可。需要注意的是对第一类数字满足整除且为偶数才可计数。

#include <cstdio>
void print(int c, int x) {
	if(c) printf("%d", x);
	else printf("N");
}
int  main() {
	int N, a[1000];
	scanf("%d", &N);
	for(int i = 0; i < N; i++) {
		scanf("%d", &a[i]);
	}
	int A1 = 0, A2 = 0, A4 = 0, A5 = 0;
	int cnt1 = 0, cnt2 = 0, cnt3 = 0, cnt4 = 0, cnt5 = 0;
	for(int i = 0; i < N; i++) {
		switch(a[i] % 5) {
			case 0:
				if(a[i] % 2 == 0) {
					cnt1++;
					A1 += a[i];
				}
				break;
			case 1:
				cnt2++;
				if(cnt2 % 2 != 0) A2 += a[i];
				else A2 -= a[i];
				break;
			case 2:
				cnt3++;
				break;
			case 3:
				cnt4++;
				A4 += a[i];
				break;
			case 4:
				cnt5++;
				if(a[i] > A5) A5 = a[i];
				break;
			default:
				break;
		}
	}
	print(cnt1, A1);
	printf(" ");
	print(cnt2, A2);
	printf(" ");
	print(cnt3, cnt3);
	printf(" ");
	if(cnt4) {
		double av;
		av = (double)A4 / (double)cnt4;
		printf("%.1f ", av);
	}
	else printf("N ");
	print(cnt5, A5);
	return 0;
} 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

1012.数字分类- PAT乙级真题 的相关文章

  • 【PAT】B1019 数字黑洞

    给定任一个各位数字不完全相同的 4 位正整数 xff0c 如果我们先把 4 个数字按非递增排序 xff0c 再按非递减排序 xff0c 然后用第 1 个数字减第 2 个数字 xff0c 将得到一个新的数字 一直重复这样做 xff0c 我们很
  • PAT 1005 Spell It Right

    Given a non negative integer N your task is to compute the sum of all the digits of N and output every digit of the sum
  • PAT 1054 求平均值 python

    1054 求平均值 20 分 本题的基本要求非常简单 给定 N 个实数 计算它们的平均值 但复杂的是有些输入数据可能是非法的 一个 合法 的输入是 1000 1000 区间内的实数 并且最多精确到小数点后 2 位 当你计算平均值的时候 不能
  • 1004 成绩排名 (20 分) Java写法 读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。

    读入 n gt 0 名学生的姓名 学号 成绩 分别输出成绩最高和成绩最低学生的姓名和学号 输入格式 每个测试输入包含 1 个测试用例 格式为 第 1 行 正整数 n 第 2 行 第 1 个学生的姓名 学号 成绩 第 3 行 第 2 个学生的
  • pta 一元多项式的乘法与加法运算

    7 2 一元多项式的乘法与加法运算 20 分 设计函数分别求两个一元多项式的乘积与和 输入格式 输入分2行 每行分别先给出多项式非零项的个数 再以指数递降方式输入一个多项式非零项系数和指数 绝对值均为不超过1000的整数 数字间以空格分隔
  • 1004. 成绩排名 (20)

    读入n名学生的姓名 学号 成绩 分别输出成绩最高和成绩最低学生的姓名和学号 输入格式 每个测试输入包含1个测试用例 格式为 第1行 正整数n 第2行 第1个学生的姓名 学号 成绩 第3行 第2个学生的姓名 学号 成绩 第n 1行 第n个学生
  • PAT乙级刷题之路1055 集体照 (25分)

    1055 集体照 25分 拍集体照时队形很重要 这里对给定的 N 个人 K 排的队形设计排队规则如下 每排人数为 N K 向下取整 多出来的人全部站在最后一排 后排所有人的个子都不比前排任何人矮 每排中最高者站中间 中间位置为 m 2 1
  • PAT 1033 旧键盘打字

    题目链接 请点击 思路 用string定义两个字符串 然后比较就可以了 然而 开始直接用cin gt gt str1 gt gt str2 导致有部分测试点始终未过去 后来参考他人的博客才发现这里应该用getline原因就在于第一行可能是空
  • PAT1033 旧键盘打字 (20 分)

    题目描述 旧键盘上坏了几个键 于是在敲一段文字的时候 对应的字符就不会出现 现在给出应该输入的一段文字 以及坏掉的那些键 打出的结果文字会是怎样 输入格式 输入在 2 行中分别给出坏掉的那些键 以及应该输入的文字 其中对应英文字母的坏键以大
  • L1-029. 是不是太胖了

    据说一个人的标准体重应该是其身高 单位 厘米 减去100 再乘以0 9所得到的公斤数 已知市斤是公斤的两倍 现给定某人身高 请你计算其标准体重应该是多少 顺便也悄悄给自己算一下吧 输入格式 输入第一行给出一个正整数H 100 lt H lt
  • PAT A1123 2019.09.05 【AVL建树 层序判断完全二叉树】

    1123 Is It a Complete AVL Tree 30 分 An AVL tree is a self balancing binary search tree In an AVL tree the heights of the
  • PAT乙级题解—— 1071 小赌怡情 (15分)

    常言道 小赌怡情 这是一个很简单的小游戏 首先由计算机给出第一个整数 然后玩家下注赌第二个整数将会比第一个数大还是小 玩家下注 t 个筹码后 计算机给出第二个数 若玩家猜对了 则系统奖励玩家 t 个筹码 否则扣除玩家 t 个筹码 注意 玩家
  • 1054 求平均值 (20 分)

    1054 求平均值 20 20 分 本题的基本要求非常简单 给定N个实数 计算它们的平均值 但复杂的是有些输入数据可能是非法的 一个 合法 的输入是 1000 1000 区间内的实数 并且最多精确到小数点后2位 当你计算平均值的时候 不能把
  • 1032. 挖掘机技术哪家强(20)

    为了用事实说明挖掘机技术到底哪家强 PAT组织了一场挖掘机技能大赛 现请你根据比赛结果统计出技术最强的那个学校 输入格式 输入在第1行给出不超过105的正整数N 即参赛人数 随后N行 每行给出一位参赛者的信息和成绩 包括其所代表的学校的编号
  • 1074 Reversing Linked List (25 point(s))

    1074 Reversing Linked List 25 point s Given a constant K and a singly linked list L you are supposed to reverse the link
  • 1063. 计算谱半径(20)

    在数学中 矩阵的 谱半径 是指其特征值的模集合的上确界 换言之 对于给定的n个复数空间的特征值 a1 b1i an bni 它们的模为实部与虚部的平方和的开方 而 谱半径 就是最大模 现在给定一些复数空间的特征值 请你计算并输出这些特征值的
  • PAT甲级刷题:模拟(不断更新)

    目录 1001 A B Format 1005 Spell It Right 1035 Password 1061 Dating 18 20 1073 Scientific Notation 16 20 1077 Kuchiguse 17
  • PAT B1014

    include
  • PAT (Basic Level) Practice (中文) B1034 有理数四则运算 (20 分)(C++)(分数四则运算)

    1034 有理数四则运算 20 分 本题要求编写程序 计算 2 个有理数的和 差 积 商 输入格式 输入在一行中按照 a1 b1 a2 b2 的格式给出两个分数形式的有理数 其中分子和分母全是整型范围内的整数 负号只可能出现在分子前 分母不
  • 8-0. 查找整数(10)

    本题要求从输入的N个整数中查找给定的X 如果找到 输出X的位置 从0开始数 如果没有找到 输出 Not Found 输入格式 输入在第1行中给出2个正整数N lt 20 和X 第2行给出N个整数 数字均不超过长整型 其间以空格分隔 输出格式

随机推荐

  • Figma插件开发

    目的 介绍 Figma 插件 figma 插件开发从 0 到 1 分享自己开发的想法 一 Figma 是什么 figma 插件是什么 Figma 初印象 figma 是一个 基于浏览器 的协作式 UI 设计工具 figma 插件初印象 加强
  • 【解决方法】INF file txtsetup.sif is corrupt or missing

    今天帮别人装一个系统 一个上网本 先描述一下环境 上网本 没有光驱 只有一个分区 C 使用UltraISO制作的启动盘 所以 只能用U盘安装 或者说我只会 可是做好了启动盘之后安装确出现上面的问题 解决方法 使用WinSetupFromUS
  • kali下微信的使用dochat(盒装微信)

    一 dochat是什么 DoChat 盒装微信 是docker封装好的微信客户端 WeChat PC Windows Client for Linux 主要解决在linux下使用微信的问题 二 安装方法 官方介绍 GitHub huan d
  • 2023-9-14 石子合并

    题目链接 石子合并 include
  • Alibaba Druid简单介绍及使用

    文章目录 概要 Druid 的主要特点和功能 Druid 的使用 一 添加依赖 二 配置数据源 三 配置 Druid 监控和过滤器 四 启动应用程序 五 访问监控页面 小结 概要 Alibaba Druid 以下简称 Druid 是阿里巴巴
  • ppt to html5 sdk,kinvey-html5-sdk

    Kinvey JavaScript SDK for HTML5 applications Kinvey HTML5 SDK Installation From the command prompt go to your app s root
  • JavaObject类初识

    Java所有的类都继承Object类 Object类中的方法 Object类中的方法一般都需要重写 Sting toString 默认的 toString 返回的是对象的堆内存地址 重写 toString一般用于输出对象的属性 class
  • csdn测试

    测试
  • EasyPR编译指南

    1 下载源码 https github com liuruoze EasyPR Download ZIP或者git https github com liuruoze EasyPR git 将代码解压到硬盘目录下 例如F 车牌识别 Easy
  • Kotlin的一点学习资源

    本来想写一点Kotlin的文章的 后来看了一下它的中文文档 质量很不错 我再写就纯属浪费时间了 所以这里干脆整理一点Kotlin的学习资源吧 文档类 Kotlin官方网站 Kotlin官方文档 Kotlin中文网站 Kotlin中文文档 K
  • 达芬奇系列教程2-简单剪辑及一些快捷键

    达芬奇系列教程2 简单剪辑及一些快捷键 前言 一 初步设置 二 剪辑 1 步骤 2 剪辑面板功能键 3 剪辑 4 快编面板 5 字幕 三 快捷键 总结 前言 以下内容为 B站 影视飓风 达芬奇系列教程 文字版笔记 一 初步设置 1 创建面板
  • 【无标题】50hz IIR 滤波的实现

    使用fdatool Fs 依据采样率 Apass 选择衰减率 如果选为30db 即为衰减1000倍 并不是衰减率越高越好 而是够用就好 选择完毕后 按Design Filter 即可生成需要的IIR 50hz陷波器 在界面中也可以查看幅频特
  • python学习随笔

    打开文件管理器窗口方式 方式一 import subprocess 执行指令 explorer是windows文件管理器的指令 目录 subprocess Popen r explorer C Users dell Desktop hmui
  • 任意文件上传

    文章目录 渗透测试漏洞原理 任意文件上传 1 任意文件上传概述 1 1 漏洞成因 1 2 漏洞原理 1 3 漏洞危害 1 4 漏洞的利用方法 1 5 漏洞的验证 2 WebShell解析 2 1 Shell 2 1 1 命令解释器 2 2
  • 面试大闯关:自我介绍放大招

    It s the most feared question during any job interview Can you tell me about yourself Before I share a list of 10 memora
  • 掌握Python的X篇_9_关系运算符与逻辑运算符

    文章目录 1 True与False关键字 2 关系运算符 3 逻辑运算符 1 True与False关键字 Python中有True和False关键字 对应了生活中的 真 假 2 关系运算符 python中有以下的关系运算符 用于比较两个操作
  • 计算机专业毕业设计题目大全——各种类型系统设计大全

    计算机专业毕业设计题目大全 一 ASP类计算机专业毕业设计题目 1 网络留言薄 2 客户管理系统 3 多媒体积件管理库的开发与应用 4 基于WEB的多媒体素材管理库的开发与应用 5 网络教学软件中的教学设计与应用 6 小型教育网站的开发与建
  • [na]完全理解icmp协议

    1 ICMP出现的原因 在IP通信中 经常有数据包到达不了对方的情况 原因是 在通信途中的某处的一个路由器由于不能处理所有的数据包 就将数据包一个一个丢弃了 或者 虽然到达了对方 但是由于搞错了端口号 服务器软件可能不能接受它 这时 在错误
  • AndroidStudio Connection Reset 问题

    解决方案
  • 1012.数字分类- PAT乙级真题

    给定一系列正整数 请按要求对数字进行分类 并输出以下 5 个数字 A 1 能被 5 整除的数字中所有偶数的和 A 2 将被 5 除后余 1 的数字按给出顺序进行交错求和 A3 被 5 除后余 2 的数字的个数 A 4 被 5 除后余 3 的