首页 > 代码库 > 1012. 数字分类
1012. 数字分类
1012. 数字分类 (20)
时间限制
50 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
给定一系列正整数,请按要求对数字进行分类,并输出以下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 #include<math.h> 3 #include<stdlib.h> 4 #include<string.h> 5 int main() 6 { 7 int i, n, a[1010]; 8 scanf("%d", &n); 9 for(i = 0; i < n; i++)10 {11 scanf("%d", &a[i]);12 }13 int a1, a2, a3, a4, a5, count = 0, flag1 = 0, flag2 = 0;14 a1 = a2 = a3 = a4 = a5 = 0;15 for(i = 0; i < n; i++)16 {17 if(a[i] % 10 == 0)18 a1 += a[i];19 else if(a[i] % 5 == 1)20 {21 flag1 = 1;22 if(flag2 == 0)23 {24 a2 += a[i];25 flag2 = 1;26 }27 else if(flag2 == 1)28 {29 a2 -= a[i];30 flag2 = 0;31 }32 }33 else if(a[i] % 5 == 2)34 a3++;35 else if(a[i] % 5 == 3)36 {37 a4 += a[i];38 count++;39 }40 else if(a[i] % 5 == 4)41 {42 if(a[i] > a5)43 a5 = a[i];44 }45 }46 if(a1 == 0)47 printf("N ");48 else49 printf("%d ", a1);50 if(flag1 == 0)51 printf("N ");52 else53 printf("%d ", a2);54 if(a3 == 0)55 printf("N ");56 else57 printf("%d ", a3);58 if(a4 == 0)59 printf("N ");60 else61 printf("%.1f ", (double)a4 / count);62 if(a5 == 0)63 printf("N\n");64 else65 printf("%d\n", a5);66 return 0;67 }
1012. 数字分类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。