PAT (Basic Level) Practice (中文)1012 数字分类 (20 分)+易错测试点

简介: PAT (Basic Level) Practice (中文)1012 数字分类 (20 分)+易错测试点

题目描述


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

A1 = 能被 5 整除的数字中所有偶数的和;

A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1−n2+n3−n4⋯;

A3 = 被 5 除后余 2 的数字的个数;

A4 = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位;

A5 = 被 5 除后余 4 的数字中最大数字。


输入格式:


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


输出格式:


对给定的 N 个正整数,按题目要求计算 A1~A5 并在一行中顺序输出。数字间以空格分隔,但行末不得有多余空格。

若其中某一类数字不存在,则在相应位置输出 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

结尾无空行


分析:


将一组数据存放到数组中,遍历数组,设变量a1,a2,a3,a4,a5;用if语句进行分类


个人代码:

#include<bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int t;
  int a[2000];
  scanf("%d",&t);
  for(int i=1;i<=t;i++)
  {
    scanf("%d",&a[i]);
  }
  int a1=0,a2=0,a3=0,a4=0,a5=0;
  int flag=1;
  int b=0;
  for(int i=1;i<=t;i++)
  {
    if(a[i]%5==0)
    {
      if(a[i]%2==0)
      {
        a1+=a[i]; 
      }
    }
    if(a[i]%5==1)
    {
      if(flag%2==1)
      {
        a2+=a[i];
      }else if(flag%2==0){
        a2-=a[i];
      }
      flag++;
    }
    if(a[i]%5==2)
    {
      a3++;
    }
    if(a[i]%5==3)
    {
      a4+=a[i];
      b++;
    }
    if(a[i]%5==4)
    {
      if(a[i]>a5)
      {
        a5=a[i];
      }
    } 
  }
  double a44=0;
  if(b!=0)
  {
    a44=(double)a4/b;
  }
  if(a1==0)
  {
    printf("N ");
  }else {
    printf("%d ",a1);
  }
  if(flag==1)
  {
    printf("N ");
  }else {
    printf("%d ",a2);
  }if(a3==0)
  {
    printf("N ");
  }else {
    printf("%d ",a3);
  }if(b==0)
  {
    printf("N ");
  }else {
    printf("%.1lf ",a44);
  }
  if(a5==0){
    printf("N");
  } else {
    printf("%#d",a5);
  }
}

注意:

1. A2可以存在和为0 的情况;(最初没有AC的原因)

2. 输入的第一行第一个数据是测试的数目,不是测试的数据,要注意(手写分类时出现错误

微信图片_20220927123217.png


相关文章
关于 SAP Spartacus 电商云 UI feature level 的测试步骤
关于 SAP Spartacus 电商云 UI feature level 的测试步骤
SAP 电商云 Spartacus UI feature level 的一个测试
SAP 电商云 Spartacus UI feature level 的一个测试
SAP 电商云 Spartacus UI feature level 的一个测试
|
Web App开发 Java
利用Basic authentication 测试不同user的metadata access request
Created by Jerry Wang, last modified on Dec 26, 2014
127 0
利用Basic authentication 测试不同user的metadata access request
|
1月前
|
测试技术 数据安全/隐私保护
通过抓包能否做好接口测试
通过抓包能否做好接口测试
22 0
|
1月前
|
数据可视化 前端开发 测试技术
接口测试这么玩才明白
接口测试这么玩才明白
54 0
|
5天前
|
JSON Java Maven
使用`MockMvc`来测试带有单个和多个请求参数的`GET`和`POST`接口
使用`MockMvc`来测试带有单个和多个请求参数的`GET`和`POST`接口
17 3
|
1月前
|
NoSQL 安全 测试技术
接口测试用例设计的关键步骤与技巧解析
该文介绍了接口测试的设计和实施,包括测试流程、质量目标和用例设计方法。接口测试在需求分析后进行,关注功能、性能、安全等六项质量目标。流程包括网络监听(如TcpDump, WireShark)和代理工具(Charles, BurpSuite, mitmproxy, Fiddler, AnyProxy)。设计用例时,需考虑基本功能流程、输入域测试(如边界值、特殊字符、参数类型、组合参数、幂等性)、线程安全(并发和分布式测试)以及故障注入。接口测试用例要素包括模块、标题、优先级、前置条件、请求方法等。文章强调了保证接口的幂等性和系统健壮性的测试重要性。
54 5
|
5天前
|
监控 前端开发 测试技术
postman接口测试工具详解
postman接口测试工具详解
33 7
|
6天前
|
监控 JavaScript 前端开发
postman接口测试工具详解
postman接口测试工具详解
20 6
|
6天前
|
前端开发 测试技术
接口测试:Mock 的价值与意义
Mock测试用于替代复杂或不可用的对象,常见于前后端交互、第三方系统及硬件解耦。它不依赖真实数据,节省工作量和联调时间。核心包括匹配规则(决定修改哪个接口)和模拟响应(设计篡改内容以符合测试用例)。
7 0