当前位置: 首页 > news >正文

PTA整数的分类处理

作者 陈越

单位 浙江大学

给定 N 个正整数,要求你从中得到下列三种计算结果:

  • A1 = 能被 3 整除的最大整数
  • A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数
  • A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)

输入格式:

输入首先在第一行给出一个正整数 N,随后一行给出 N 个正整数。所有数字都不超过 100,同行数字以空格分隔。

输出格式:

在一行中顺序输出 A1、A2、A3的值,其间以 1 个空格分隔。如果某个数字不存在,则对应输出NONE

输入样例 1:

8
5 8 7 6 9 1 3 10

输出样例 1:

9 3 6.5

输入样例 2:

8
15 18 7 6 9 1 3 10

输出样例 2:

18 3 NONE

解题思路:主要是将输入的正整数分为三类,可以用switch语句将这三种情况分类整理,然后根据A1,A2,A3要求做出不同的处理,别忘了每个case后面都要加一个break,处理A2的时候要变成浮点数计算,要不然输出结果就会是整数,与题目要求不一致。

代码实现:

#include<stdio.h>
int main(){int N, i, e,  max = 0,sum=0, count1 = 0, count2 = 0;scanf("%d", &N);for (i = 0; i < N; i++) {scanf("%d", &e);switch (e%3){case 0: {if (e > max)max = e;}break;case 1:count1++; break;case 2:sum += e; count2++;default:break;}}if (max == 0)printf("NONE ");elseprintf("%d ", max);if (count1 == 0)printf("NONE ");elseprintf("%d ", count1);if (sum == 0)printf("NONE");elseprintf("%.1f", sum*1.0/count2);return 0;
}

测试结果:


http://www.mrgr.cn/news/18487.html

相关文章:

  • 接口调用方式 -- 总结
  • Cortex-A7的运行模式和寄存器组详解
  • 实战项目-快速实战-springboot dataway
  • 相机常见名词详解
  • String和StringBuffer互转
  • 【C语言必学知识点六】自定义类型——内存对齐与位段
  • 《系统架构设计师教程(第2版)》第17章-通信系统架构设计理论与实践-02-广域网网络架构
  • 给你的头像加个口罩网站html源码
  • MySQL数据库管理系统下载安装
  • 认知杂谈29
  • AI耳机是不是好赛道
  • 第J2周:ResNet50V2算法实战与解析(pytorch版)
  • 使用SymbolGlyph和SymbolSpan在HarmonyOS中实现高级图标效果
  • 技术献文-小白如何正确使用Linux(3-高级篇)
  • Python对音频进行频谱分析
  • 美团代付支持多模板全开源多种支付通道 多模版三合一源码附教程
  • 【算法】-贪心算法
  • Django 第十三课 -- Form 组件
  • 基于yolov8的路面垃圾检测系统python源码+onnx模型+评估指标曲线+精美GUI界面
  • SUSE Linux下编译Nginx报错:recipe for target ‘install‘ failed