#include <stdio.h>

int fun(int D[], int N) { // 如果数据数量少于2个,差异认为是0 if (N < 2) { return 0; }

int max_diff = 0;
int max_score = D[0];

for (int i = 1; i < N; i++) {
    if (D[i] > max_score) {
        max_score = D[i];
    } else {
        int diff = max_score - D[i];
        if (diff > max_diff) {
            max_diff = diff;
        }
    }
}

return max_diff;

}

int main() { int N; scanf("%d", &N);

int D[N];
for (int i = 0; i < N; i++) {
    scanf("%d", &D[i]);
}

int result = fun(D, N);
printf("%d\n", result);

return 0;

}

C语言高效算法:计算相邻名次成绩最大差异

原文地址: https://www.cveoy.top/t/topic/h2uT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录