/*
Search module for the desired value from data array.
Returned value must be:
- "even"
- ">= mean"
- "<= mean + 3 * sqrt(variance)"
- "!= 0"
OR
0
*/
#include <math.h>
#include <stdio.h>
#define NMAX 30
int input(int* a, int* n);
double mean(int* a, int n);
double variance(int* a, int n);
int search(int* a, int n);
int main() {
int n, data[NMAX];
if (!input(data, &n)) {
printf("n/a");
return 0;
}
printf("%d", search(data, n));
return 0;
}
int input(int* a, int* n) {
if (scanf("%d", n) != 1) return 0;
if (*n <= 0 || *n > NMAX) return 0;
for (int* p = a; p - a < *n; p++) {
if (scanf("%d", p) != 1) return 0;
}
return 1;
}
double mean(int* a, int n) {
double sum = 0;
for (int* p = a; p - a < n; p++) {
sum += *p;
}
return sum / n;
}
double variance(int* a, int n) {
double m = mean(a, n);
double sum = 0;
for (int* p = a; p - a < n; p++) {
double diff = *p - m;
sum += diff * diff;
}
return sum / n;
}
int search(int* a, int n) {
double m = mean(a, n);
double upper = m + 3 * sqrt(variance(a, n));
for (int* p = a; p - a < n; p++) {
if (*p != 0 && *p % 2 == 0 && *p >= m && *p <= upper) return *p;
}
return 0;
}