본문 바로가기

Study/Baekjoon & SW Expert Academy

[ SW Expert Academy : 1984번 중간 평균값 구하기 ]

지난 포스팅에서와 같이 SW Expert Academy의 문제는

직접 홈페이지에 방문하셔서 봐주시기 바랍니다!

https://swexpertacademy.com/main/main.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

문제를 보고 오셨나요?

 

충분히 고려해 보시고 문제가 잘 풀리지 않으신다면 다음의 코드를 참고해 주세요~

 

 

 

 

 

 

 

 

 

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main() {

	vector<long long>number;	//vector
	double avg;			//평균
	double sum = 0;			//합
	int result = 0;		
	int n;
	double a;
	int j = 1;

	cin >> n;

	while (n--) {

		for (int i = 0; i < 10; i++) {
			cin >> a;
			number.push_back(a);
		}
		
		//number vector를 정렬
		sort(number.begin(), number.end());

		//최소, 최대 제외한 숫자들 합 구하기
		for (int i = 1; i < number.size() - 1; i++) {
			sum += number[i];
		}

		//10개의 수 이므로 8로 나눠 평균 구하기
		avg = sum / 8;


		//반올림
		if (avg - (int)avg >= 0.5) {
			result = (int)avg + 1;
		}
		else result = (int)avg;
	
		cout << "#" << j << " " << result << "\n";
		j++;

		//vector 비우고 반복문 실행
		number.clear();
		result = 0;
		sum = 0;
	}


	return 0;
}