#include <stdio.h>
void saidai_num(int kosuu, int data[], int *max, int *max_num) {
*max = data[0];
*max_num = 1;
for (int i = 1; i <= kosuu; i++) {
if (data[i] > *max) {
*max = data[i];
*max_num = 1;
} else if (data[i] == *max) {
(*max_num)++;
}
}
}
int main(void) {
int data1[7] = {10, 15, 30, 15, 30, 30, 7};
int data2[6] = {10, 10, 10, 10, 10, 10};
int max1, num1;
int max2, num2;
saidai_num(6, data1, &max1, &num1);
saidai_num(5, data2, &max2, &num2);
printf("配列1: max=%d, 個数=%d\n", max1
, num1
); printf("配列2: max=%d, 個数=%d\n", max2
, num2
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CnZvaWQgc2FpZGFpX251bShpbnQga29zdXUsIGludCBkYXRhW10sIGludCAqbWF4LCBpbnQgKm1heF9udW0pIHsKICAgICptYXggPSBkYXRhWzBdOyAgICAgIAogICAgKm1heF9udW0gPSAxOyAgICAgICAgCgogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0ga29zdXU7IGkrKykgewogICAgICAgIGlmIChkYXRhW2ldID4gKm1heCkgewogICAgICAgICAgICAqbWF4ID0gZGF0YVtpXTsgICAgIAogICAgICAgICAgICAqbWF4X251bSA9IDE7ICAgICAgIAogICAgICAgIH0gZWxzZSBpZiAoZGF0YVtpXSA9PSAqbWF4KSB7CiAgICAgICAgICAgICgqbWF4X251bSkrKzsgICAgICAKICAgICAgICB9CiAgICB9Cn0KCmludCBtYWluKHZvaWQpIHsKICAgIGludCBkYXRhMVs3XSA9IHsxMCwgMTUsIDMwLCAxNSwgMzAsIDMwLCA3fTsKICAgIGludCBkYXRhMls2XSA9IHsxMCwgMTAsIDEwLCAxMCwgMTAsIDEwfTsKCiAgICBpbnQgbWF4MSwgbnVtMTsKICAgIGludCBtYXgyLCBudW0yOwoKICAgIHNhaWRhaV9udW0oNiwgZGF0YTEsICZtYXgxLCAmbnVtMSk7IAogICAgc2FpZGFpX251bSg1LCBkYXRhMiwgJm1heDIsICZudW0yKTsgCgoKICAgIHByaW50Zigi6YWN5YiXMTogbWF4PSVkLCDlgIvmlbA9JWRcbiIsIG1heDEsIG51bTEpOwogICAgcHJpbnRmKCLphY3liJcyOiBtYXg9JWQsIOWAi+aVsD0lZFxuIiwgbWF4MiwgbnVtMik7CgogICAgcmV0dXJuIDA7Cn0KCg==