알고리즘/백준 문제풀이

백준 8958번, 언어 : C/C++

ya_ya 2021. 3. 19. 17:33
반응형

문제설명

 

출처 : www.acmicpc.net/problem/4344

 

4344번: 평균은 넘겠지

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

www.acmicpc.net

평균을 넘는 학생 수 의 비율을 출력하는 문제.

 

문제풀이 아이디어

 

그냥 문제의 흐름대로 단순하게 계산.

배열의 길이를 동적으로 할당.

 

 

코드

 

#include<iostream>
#include<stdio.h>
using namespace std;

int main()
{
	int testCase;
	double average=0;
	int count = 0; //평균을 넘는 학생 수
	cin >> testCase;
	

	for (int i = 0; i < testCase; i++)
	{
		int N;
		cin >> N;
		int* arr = new int[N]; //학생 수에 따른 배열 크기 동적할당
		for (int j = 0; j < N; j++)
		{
			cin >> arr[j];
			average += arr[j];
		}
		average /= (double)N; //학생들 평균 점수

		/***평균 넘는 학생 확인***/
		for (int j = 0; j < N; j++)
		{
			if (arr[j] > average) count += 1;
		}
		//cout << "count : " << count << "everage : " << average << endl;
		
		printf("%.3f%%\n", (double)count / N*100);
		
		average = 0;
		count = 0;
		delete[] arr;

	}
	return 0;
}

 

 

 

더 많은 문제의 코드 : github.com/Ewlrma/Algorithm-Solution-

 

Ewlrma/Algorithm-Solution-

Solution for Algorithm Problem. Contribute to Ewlrma/Algorithm-Solution- development by creating an account on GitHub.

github.com

 

반응형