1 条题解

  • 0
    @ 2026-8-10 17:00:22

    看似简单的题也不简单啊!

    #include<stdio.h>
    int n;
    int a[15];
    void max_min(int a[],int *max,int *min,int *ans_max,int *ans_min){
        *max = a[0];
        *min = a[0];
        for(int i = 1;i<n-1;i++){
            if(*max < a[i]) {
                *max = a[i];
                *ans_max = i;
            }
            if(*min > a[i]) {
                *min = a[i];
                *ans_min = i;
            }
        }
    }
    int main(){
        int max,min,ans_max,ans_min;
        scanf("%d",&n);
        for(int i = 0;i<n;i++){
            scanf("%d",&a[i]);
        }
        max_min(a,&max,&min,&ans_max,&ans_min);
        int temp_max = a[n-1];
        int temp_min = a[0];
        a[0] = min;
        a[ans_min] = temp_min;
        a[n-1] = max;
        a[ans_max] = temp_max;
        for(int i = 0;i<n;i++) printf("%d ",a[i]);
    
        return 0;
    }
    

    信息

    ID
    224
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    递交数
    672
    已通过
    224
    上传者