求解c语言80分
查看原帖
求解c语言80分
1562792
TuKuai1109楼主2024/11/5 15:41
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <ctype.h>
int max(int x, int y){
    if (x > y) {
        return x;
    } else {
        return y;
    }
}

int min(int x, int y){
    if (x < y) {
        return x;
    } else {
        return y;
    }
}

int main() {
    int len = 0;
    scanf("%d", &len);
    int N;
    scanf("%d", &N);
    int pp[N];
    for (int i = 0; i < N; i++){
        scanf("%d", &pp[i]);
       
    }
    if(N == 0){
        printf("0 0");
        return 0;
    }
    if(len == 1){
        printf("1 1");
        return 0;
    }
    for(int i = 0; i < N; i++){
        for(int j = 0; j < N-i-1; j++){
            if(pp[j] > pp[j+1]){
                // 交换元素
                int temp = pp[j];
                pp[j] = pp[j+1];
                pp[j+1] = temp;
            }
        }
    }
    int min_time = 0;
    int max_time = 0;
    for (int i=1;i<=N; i++){
        min_time=max(min(pp[i],len+1-pp[i]),min_time);
    }
    max_time=max(len+1-pp[0],pp[N-1]);
    printf("%d %d", min_time, max_time);
    return 0;
}



2024/11/5 15:41
加载中...