【题目链接】

给定一系列正整数,请按要求对数字进行分类,并输出以下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

提交代码:

 1 #include <stdio.h>
 2
 3 int main(void)
 4 {
 5     int cnt, num;
 6     int a1, a2, a3, a4, a5;
 7     int i, xor, a2_flag, a4_cnt;
 8
 9     scanf("%d", &cnt);
10
11     a1 = a2 = a3 = a4 = a5 = 0;
12
13     xor     = 1;
14     a2_flag = 0;
15     a4_cnt  = 0;
16
17     for(i = 0; i < cnt; i++)
18     {
19         scanf("%d", &num);
20         if(num % 10 == 0)
21         {
22             a1 += num;
23         }
24
25         if(num % 5 == 1)
26         {
27             a2 += (xor == 1 ? num : -num);
28             xor ^= 1;
29             a2_flag = 1;
30         }
31
32         if(num % 5 == 2)
33         {
34             a3 += 1;
35         }
36
37         if(num % 5 == 3)
38         {
39             a4 += num;
40             a4_cnt += 1;
41         }
42
43         if(num % 5 == 4)
44         {
45             if(num > a5)
46                 a5 = num;
47         }
48     }
49
50     //printf(a1 == 0 ? "%c " : "%d ", a1 == 0 ? 'N' : a1);
51     if(a1 == 0)
52         printf("N ");
53     else
54         printf("%d ", a1);
55
56     //printf(a2_flag == 0 ? "%c " : "%d ", a2_flag == 0 ? 'N' : a2);
57     if(a2_flag == 0)
58         printf("N ");
59     else
60         printf("%d ", a2);
61
62     //printf(a3 == 0 ? "%c " : "%d ", a3 == 0 ? 'N' : a3);
63     if(a3 == 0)
64         printf("N ");
65     else
66         printf("%d ", a3);
67
68     //printf(a4 == 0 ? "%c " : "%.1f ", a4 == 0 ? 'N' : (float)a4/a4_cnt);
69     if(a4 == 0)
70         printf("N ");
71     else
72         printf("%.1f ", (float)a4/a4_cnt);
73
74
75     //printf(a5 == 0 ? "%c" : "%d", a5 == 0 ? 'N': a5);
76     if(a5 == 0)
77         printf("N");
78     else
79         printf("%d", a5);
80
81     return 0;
82 }

转载于:https://www.cnblogs.com/utank/p/4755601.html

PAT (Basic Level) Practise:1012. 数字分类相关推荐

  1. PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)

    PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)   http://www.patest.cn/contests/pat-b-practise/1025 ...

  2. PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)

    PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)  http://www.patest.cn/contests/pat-b-practise/1034 ...

  3. 卡拉兹(Callatz)猜想,PAT(Basic Level) Practise NO.1001

    PAT(Basic Level) Practise NO.1001 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半. 这样 ...

  4. PAT乙级真题全集-PAT (Basic Level) Practise (中文)

    1001. 害死人不偿命的(3n+1)猜想 (15) 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去, ...

  5. PAT (Basic Level) Practise 1040 有几个PAT(DP)

    1040. 有几个PAT(25) 时间限制 120 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 字符串APPAPT中包含了两个单 ...

  6. PAT (Basic Level) Practise - 继续(3n+1)猜想

    题目链接:https://www.patest.cn/submissions/4414905 1005. 继续(3n+1)猜想 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限 ...

  7. PAT (Basic Level) 1075 链表元素分类(模拟)

    题目链接:点击查看 题目大意:初始时给出一个链表,需要按照要求排序: 当结点中的值为负数时,需要排在最前面 当结点中的值为非负数且小于阈值k时,排在中间 当结点中的值大于阈值k时,排在最后 在整体排序 ...

  8. PAT (Basic Level) 1044 火星数字(模拟)

    题目链接:点击查看 题目大意:现在规定火星文为十三进制的数字,十位和个位的数都给出(都表示为字符串的形式),现在给出n个询问,每次给出火星文或数字,请输出转换后的结果 题目分析:先强调一个小细节需要注 ...

  9. PAT (Basic Level) Practise 1045 快速排序(离散化+主席树区间内的区间求和)

    1045. 快速排序(25) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 著名的快速排序算法里有一个经典的划分 ...

最新文章

  1. 什么是动态DNS 动态DNS有什么用
  2. Windows7关闭休眠
  3. 逐行阅读redux源码(二)combineReducers
  4. 出现should be mapped with insert=“false“ update=“false“的解决方法
  5. MAT之PSO:利用PSO+ω参数实现对一元函数y = sin(10*pi*x) ./ x进行求解优化,找到最优个体适应度
  6. XslTransform.Transform方法将结果输出到字符串
  7. Mod, Or and Everything HDU - 6950
  8. python遗传算法工具箱的使用_遗传算法的python实现,非常值得看的一篇文章
  9. 【纠错记录】本地FTP服务器无法被外部连接
  10. 计算机软考高级论文,非IT专业,写论文太难了!怎么一次考过软考高项?
  11. puttygen convert ppk file to xshell key file
  12. UWP 应用通知Notifications
  13. .NET Core 新手上路
  14. html上绑定回车事件,js/jquery中input 绑定回车enter事件的代码
  15. 用java实现首字母大写_java实现每个单词首字母大写
  16. vue兼容IE 360
  17. 怎样连接网站的服务器ipad,ipad可以连接云服务器地址
  18. python怎样使用各个日期赤纬_Python常用的日期时间处理方法示例
  19. u9服务器系统,U9服务器选型和部署方案doc .doc
  20. 三菱fx2n做从站的modbus通讯_三菱Q系列和FX2N系列进行CCLink通讯(主站和智能设备站的通讯)...

热门文章

  1. 基于弹性束图匹配的人脸识别
  2. P2051 中国象棋
  3. innobackupex自动备份脚本
  4. mac安装brew和zsh
  5. Hyper-V的实验安装----1
  6. Zend Studio实现移动程序开发一体化的秘密武器——CCM
  7. WCF 第四章 绑定 绑定元素
  8. Linux下MONO执行C#程序
  9. proxy负载均衡、读写分离
  10. [转]MySQL实现分页查询