BEAKJOON

백준(4344번 평균은 넘겠지)풀이 C++

Shin_jisoo 2020. 12. 5. 23:56
728x90

www.acmicpc.net/problem/4344

 

4344번: 평균은 넘겠지

대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.

www.acmicpc.net

1) 주석없는 VERSION

#include<iostream>
using namespace std;

int main() {
	int c;
	cin >> c;
	double result;

	int score[1000] = { 0 };

	for (int i = 0;i < c;i++) {

		int n;
		cin >> n;

		int sum = 0;
		for (int j = 0;j < n;j++) {
			cin >> score[j];
			sum += score[j];
		}
		int avg = sum / n;

		int count = 0;
		for (int k = 0;k < n;k++) {
			if (score[k] > avg)
				count++;
		}

		cout << fixed;
		cout.precision(3);
		result = (double)count / n *100;
		cout << result << "%" << "\n";
	}

}

2) 주석있는 VERSION

#include<iostream>
using namespace std;

int main() {
	int c;
	cin >> c; // 테스트 케이스의 개수
	double result;

	int score[1000] = { 0 };

	for (int i = 0;i < c;i++) {

		int n;
		cin >> n; // 학생의 수

		int sum = 0;
		for (int j = 0;j < n;j++) {
			cin >> score[j];
			sum += score[j];
		}
		int avg = sum / n;

		int count = 0;
		for (int k = 0;k < n;k++) {
			if (score[k] > avg)
				count++; // 평균을 넘는 학생의 수 카운트
		}

		cout << fixed;
		cout.precision(3); // 소수점 셋째 자리까지 출력
		result = (double)count / n *100; // count/n 을 double로
		cout << result << "%" << "\n";
	}

}

 

❌주의사항❌

◾ result = (double)count / n * 100;