PAT (Basic Level) Practise:1012. 数字分类
2015-08-24 18:40
369 查看
【题目链接】
给定一系列正整数,请按要求对数字进行分类,并输出以下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:
输出样例1:
输入样例2:
输出样例2:
提交代码:
给定一系列正整数,请按要求对数字进行分类,并输出以下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
提交代码:
#include <stdio.h> int main(void) { int cnt, num; int a1, a2, a3, a4, a5; int i, xor, a2_flag, a4_cnt; scanf("%d", &cnt); a1 = a2 = a3 = a4 = a5 = 0; xor = 1; a2_flag = 0; a4_cnt = 0; for(i = 0; i < cnt; i++) { scanf("%d", &num); if(num % 10 == 0) { a1 += num; } if(num % 5 == 1) { a2 += (xor == 1 ? num : -num); xor ^= 1; a2_flag = 1; } if(num % 5 == 2) { a3 += 1; } if(num % 5 == 3) { a4 += num; a4_cnt += 1; } if(num % 5 == 4) { if(num > a5) a5 = num; } } //printf(a1 == 0 ? "%c " : "%d ", a1 == 0 ? 'N' : a1); if(a1 == 0) printf("N "); else printf("%d ", a1); //printf(a2_flag == 0 ? "%c " : "%d ", a2_flag == 0 ? 'N' : a2); if(a2_flag == 0) printf("N "); else printf("%d ", a2); //printf(a3 == 0 ? "%c " : "%d ", a3 == 0 ? 'N' : a3); if(a3 == 0) printf("N "); else printf("%d ", a3); //printf(a4 == 0 ? "%c " : "%.1f ", a4 == 0 ? 'N' : (float)a4/a4_cnt); if(a4 == 0) printf("N "); else printf("%.1f ", (float)a4/a4_cnt); //printf(a5 == 0 ? "%c" : "%d", a5 == 0 ? 'N': a5); if(a5 == 0) printf("N"); else printf("%d", a5); return 0; }
相关文章推荐
- 较详细的介绍JNI
- 使用CSS3来实现滚动视差效果的教程
- IOS培训:Crossapp最新商用产品《A佳购物》制作人李强线上专访
- linux下pip安装mysql-python的错误解决方法
- STL学习----入门(1)[set]
- mysql语句错误(更新中)
- 杭电3635-Dragon Balls-并查集之路径压缩
- BufferedInputStream学习笔记
- 正则表达式识别ip
- 自定义dialogfragment全屏
- linux下core文件设置与查看
- 【STL容器学习】-关联容器与map的使用方法
- 开源 java CMS - FreeCMS2.2 模型管理
- HTTP Status 500 - Unable to instantiate Action
- 皮肤检测及对检测到皮肤单独校色 (基于自动白平衡)
- NYOJ 467 中缀式变后缀式
- Ugly Number II
- 【读书笔记】iOS-简单的数据驱动程序
- STL学习----入门(1)[queue]
- HDU - 4790(规律求和)