一 题目描述

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

  • A​​​ = 能被 5 整除的数字中所有偶数的和;
  • A​​​ = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n​1​​−n​2​​+n​3​​−n​4​​⋯;
  • A​​​ = 被 5 除后余 2 的数字的个数;
  • A​​​ = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位;
  • A​​​ = 被 5 除后余 4 的数字中最大数字。

   输入格式:

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

   输出格式:

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

  输入样例 113 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 <stdio.h>

#define MIN 6
#define MAX 1000 int main(int argc, char *argv[])
{
int A[MIN], Result[MIN]; /* store a1 to a5 */
int N[MAX];
int i, j, k, num; /* k as index in A1 */
int evenSum, mixSum, cnt, maxNum, sumForAve;
float x = 0.0; for ( i = ; i < MIN; i++ ) {
A[i] = ; /* flag */
} /* x as index in A4 */
k = evenSum = mixSum = ;
cnt = sumForAve = maxNum = ;
scanf("%d", &num);
for ( i = ; i < num; i++ ) {
scanf("%d", &N[i]); /* init */
}
for ( j = ; j < num; j++ ) {
if ( (N[j]%)== && (N[j]%)== ) {
/* case in A1 */
evenSum += N[j];
A[] = ;
}
if ( (N[j]%) == ) {
/* case in A2 */
k++;
A[] = ;
if ( k% == ) {
mixSum += N[j];
} else {
mixSum -= N[j];
}
}
if ( (N[j]%) == ) {
/* case in A3 */
cnt++;
A[] = ;
}
if ( (N[j]%) == ) {
/* case in A3 */
sumForAve += N[j];
x += 1.0;
A[] = ;
}
if ( (N[j]%) == ) {
if ( N[j] > maxNum ) {
maxNum = N[j];
}
A[] = ;
}
} Result[] = evenSum;
Result[] = mixSum;
Result[] = cnt;
Result[] = sumForAve;
Result[] = maxNum;
for ( j = ; j < MIN; j++ ) {
if ( A[j] == ) {
/* not exist */
printf("N");
} else if ( j == ) {
printf("%.1f", Result[j]/x);
} else {
printf("%d", Result[j]);
}
if ( j < (MIN - ) ) {
printf(" ");
}
} return ;
}

PTA(BasicLevel)-1012 数字分类的更多相关文章

  1. PAT乙级 1012. 数字分类 (20)

    1012. 数字分类 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一系列正整数,请按要求对数字进 ...

  2. PAT-乙级-1012. 数字分类 (20)

    1012. 数字分类 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一系列正整数,请按要求对数字进 ...

  3. [C++]PAT乙级1012.数字分类 (20/20)

    /* 1012. 数字分类 (20) 给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字: A1 = 能被5整除的数字中所有偶数的和: A2 = 将被5除后余1的数字按给出顺序进行交错求和, ...

  4. PAT 乙级 1012 数字分类 (20) C++版

    1012. 数字分类 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一系列正整数,请按要求对数字进 ...

  5. PAT 1012 数字分类 (20)(代码+测试点)

    1012 数字分类 (20)(20 分) 给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字: A1 = 能被5整除的数字中所有偶数的和: A2 = 将被5除后余1的数字按给出顺序进行交错求 ...

  6. 【PAT】1012. 数字分类 (20)

    1012. 数字分类 (20) 给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字: A1 = 能被5整除的数字中所有偶数的和: A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算 ...

  7. PAT(B) 1012 数字分类(Java)

    题目链接:1012 数字分类 代码 /** * Score 20 * Run Time 142ms * @author wowpH * @version 1.1 */ import java.util ...

  8. PAT 乙级 1012.数字分类 C++/Java

    题目来源 给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A​1​​ = 能被 5 整除的数字中所有偶数的和: A​2​​ = 将被 5 除后余 1 的数字按给出顺序进行交错求和, ...

  9. PTA(Basic Level)1012.数字分类

    给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A1 = 能被 5 整除的数字中所有偶数的和: A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1−n2+n ...

随机推荐

  1. 四、python小功能记录——按键转点击事件

    import win32api,win32gui,win32confrom pynput.keyboard import Listener def clickLeftCur(): win32api.m ...

  2. 超强PHP集成环境,支持800多个不同PHP版本同时运行,无限自定义添加mysql与php版本

    转载自今日头条 小编最近发现PHPWAMP竟然又更新了,激动之余向大家介绍一下新版的强大功能. PHPWAMP是纯绿色集成环境,高版本php无需安装VC运行库,默认已经集成VC运行库!Nginx支持服 ...

  3. 深入浅出SharePoint——使用WinDbg进行调试

  4. aclocal: error: aclocal: file '/usr/local/share/aclocal/wxwin.m4' does not exist

    1. 查找wxwin.m4文件 mdfind -name wxwin.m4 2. 删除/usr/local/share/aclocal/wxwin.m4,建立软连接 cd /usr/local/sha ...

  5. 配置 Tomcat 服务 和 自启动

    如果我们使用war 包进行部署项目的时候,需要把包放进Tomcat的目录下,为了使我们的服务能够在服务器重启的时候自动启动起来,我们需要把Tomcat设置成自起服务. 配置 Tomcat 服务 新建服 ...

  6. codeforces 809C Find a car

    codeforces 809C Find a car 题意 有个\(1e9*1e9\)的矩阵,行 \(x\) 从上到下递增,列 \(y\) 从左到右递增.每个格子有一个正值.\((x, y)\) 的值 ...

  7. JS数据模板分离(告别字符串拼接)-template

    刚开始在写第一个动态网页的demo时,由于html不多,便使用字符串拼接的方法添加到dom来渲染,可是在后来写某外卖app时也需要如此添加,打开代码一看几千行,突然感觉累觉不爱 一行行的拼接有这功夫别 ...

  8. IOS Charles(代理服务器软件,可以用来拦截网络请求)

    什么是Charles Charles是一款代理服务器软件,可以用来拦截网络请求 利用Charles能得知大部分公司app的数据来源和数据格式 下载地址:http://www.charlesproxy. ...

  9. ACM退役帖

    不知不觉在ACM竞赛的道路上已经走了两年半了,不得不感慨时间真的是过得很快. 还记得大一的时候什么也不会,每天晚上翘晚自习来机房刷题,浑浑噩噩的经过大一的打铁,大二开始有计划系统的学习ACM知识点,直 ...

  10. 【[HAOI2011]向量】

    靠瞎猜的数学题 首先我们先对这些向量进行一顿组合,会发现\((a,b)(a,-b)\)可以组合成\((2a,0)\),\((b,-a)(b,a)\)可以组合成\((2b,0)\),同理\((0,2a) ...