본문 바로가기
DEV/백준 알고리즘

백준 알고리즘 4344번(파이썬)

by 올커 2022. 10. 2.

 

백준 4344번_파이썬 알고리즘

Q. 백준 4344. 평균은 넘겠지

테스트 케이스를 받아 학생들의 평균의 비율을 알려주는 프로그램을 작성한다.
(1) 입력 : 첫째 줄에는 테스트 케이스의 개수 C를 입력받고, 둘째 줄은 각 테스트 케이스의 학생의 수 N와 각 N명의 학생들의 점수를 입력받는다. (1 ≤ N ≤ 1000, N은 정수, 0 ≤ 점수 ≤ 100)
(2) 출력 : 각 케이스마다 평균을 넘는 학생들의 비율을 출력한다. (*소수점 셋째 자리까지 반올림)


A. 풀이

# Q 백준 4344. 평균은 넘겠지
# 테스트 케이스 갯수 선언
c = int(input())

# for 문을 통해 테스트
for i in range(c):
	score = list(map(int, input().split()))     # 스코어 입력받기
	avg_score = sum(score[1:])/score[0]     # 평균 스코어 구하기
	better = []                             # 평균 이상의 점수를 획득한 인원 리스트
	for j in range(len(score)):             # 스코어 수만큼 for 반복
		if j == 0:                          # score의 첫번째 인덱스는 인원수이므로 제외
			pass
		elif score[j] > avg_score:          # score 요소가 평균보다 크다면
			better.append(score[j])         # better 리스트에 추가
	print(f"{len(better)/score[0] :.3%}")   # better 리스트 요소 숫자를 전체인원으로 나누기
											# f스트링, 퍼센트, 유효숫자 주의!

R. 리뷰

 - f-string, 퍼센트, 유효숫자 사용 익힐것
 - 문자열 인덱스 슬라이싱에서 score[1:] 과 score[1:-1]은 다르므로 혼동하지 않도록 주의해야 한다.

반응형

댓글