2108번 통계학
2023. 4. 3. 09:08ㆍBaekJoon
단계별로 풀어보기 - 정렬 - 4단계
https://www.acmicpc.net/problem/2108
#include <iostream>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std;
int N;
vector<int> arr;
int check[8001];
double average()
{
double sum=0;
for(int i=0;i<N;i++)
{
sum+=arr[i];
}
return round(sum/N);
}
int median()
{
return arr[N/2];
}
int mode()
{
int count=0;
int result=0;
for(int i=0;i<8001;i++)
{
if(count<check[i])
{
count=check[i];
result=i;
}
}
for(int i=result+1;i<8001;i++)
{
if(count==check[i])
{
result=i;
break;
}
}
return result-4000;
}
int range()
{
return arr[N-1]-arr[0];
}
int main()
{
cin>>N;
for(int i=0;i<N;i++)
{
int temp;
cin>>temp;
arr.push_back(temp);
check[temp+ 4000]++;
}
sort(arr.begin(),arr.end());
cout<<average()<<"\n";
cout<<median()<<"\n";
cout<<mode()<<"\n";
cout<<range();
return 0;
}
'BaekJoon' 카테고리의 다른 글
11650번 좌표 정렬하기 (0) | 2023.04.03 |
---|---|
1427번 소트인사이드 (0) | 2023.04.03 |
10989번 수 정렬하기 3 (0) | 2023.04.03 |
2751번 수 정렬하기 2 (0) | 2023.04.03 |
2750번 수 정렬하기 (0) | 2023.04.03 |