#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int num[500001];
int counting[8001];

int compare(const void *a, const void *b){
    int A=*(int *)a;
    int B=*(int *)b;
    return A-B;
}

int main() {
    int n;
    scanf("%d",&n);
    int sum=0;
    for(int i=0; i<n; i++) {
        scanf("%d",&num[i]);
        //산술평균
        sum+=num[i];
        //최빈값
        //-4000~4000 에서 전부 +4000
        counting[4000+num[i]]++;
    }
    qsort(num,n,sizeof(int),compare);
    //최빈
    int max=0;

    for(int i=0; i<8001; i++) {
        if(max<counting[i]) max=counting[i];
    }
    int mode=0;
    int flag=0;
    for(int i=0; i<8001; i++) {
        if(max==counting[i]) {
            mode = i -4000;
            if(flag==1) break;
            flag=1;
            }
    }
    
    //평균 0 0 -1 하면 .-0.333.. 이라서 -0으로 출력됨!!!!!!!!!
    //밑에 2줄이 그렇게 안나오게함
    double avg = (double)sum / n;
    printf("%.0f\n", round(avg)==0 ? 0 : round(avg));
    
    //중앙
    printf("%d\n",num[n/2]);
    
    //최빈
    printf("%d\n",mode);
    
    //범위
    printf("%d\n",num[n-1]-num[0]);
    
    return 0;
}

















Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: