#74. 백준 2587번 문제 풀이: 대표값2 | 문제 원본 보기 |
--입력-- 10 40 30 60 30 --출력-- 34 30
평균값은 루프를 돌려 전체 값을 더하고 나누어주면 된다. 유의할 점은 자연수로 출력해야 한다. 대표값은 개수의 중앙값, 즉 2로 나누고, 숫자들을 소팅한 후에 중앙순서에 해당하는 값을 출력해 주면 된다. 여기서는 언어별 내장된 소팅함수 사용에 대한 제한이 없으므로, 내장 소팅함수를 사용해서 풀어보도록 하겠다.
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int i;
int ns[5]; // 숫자들을 저장할 배열
int sum = 0; // 평균계산을 위해 합계를 저장할 변수.
for(i = 0; i < 5; i++) { // 5회 루프
cin >> ns[i]; // 값을 하나씩 받아 정수형으로 변환 후 대입
sum += ns[i]; // 수들의 합 계산
}
sort(ns, ns + 5); // 내장 소팅함수로 소팅
cout << sum / 5 << '\n' << ns[5 / 2];
// 총합을 5로 나눈 평균과 전체개수(5)를 반으로 나눈 중앙값의 값 출력
return 0;
}