缘由PAT乙级真题解惑1012数字分类_编程语言-CSDN问答

cpp
int n = 0, x = 0, j = 0, a[5]{}, g = 0; bool z = 1;
std::cin >> n;//13 1 2 3 4 5 6 7 8 9 10 16 18 20
sr:if (x < n)
{
std::cin >> j;
if (j % 5 == 0 && j % 2 == 0)
a[0] += j;
else if (j % 5 == 1)
a[1] += (z ? j : -j), z = !z;
else if (j % 5 == 2)
++a[2];
else if (j % 5 == 3)
a[3] += j, ++g;
else if (j % 5 == 4 && a[4] < j)
a[4] = j;
++x;
goto sr;
}
x = 0;
sc:if (x < 5)
{
if (a[x])
if (x == 3)
std::cout << std::fixed << std::setprecision(1) << a[x] * 1.0 / g << " ";
else
std::cout << a[x] << (x < 4 ? " " : "\n");
else
std::cout << "N ";
++x;
goto sc;
}

是日已过命亦随减,日一布施福德随增。非坚转坚。