一、题目简介
输入格式:
每个输入包含 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 flag = 1;
int getRes(int A[][2],int n);
void printRes(int A[][2]);
int main(){
int A[5][2] = {
0