본문 바로가기
알고리즘/배열 \ 정렬

#17 [파이썬] 백준 4344번 문제: 평균은 넘겠지

by 채채씨 2021. 4. 21.
728x90
반응형

<문제>

acmicpc.net/problem/4344

 

4344번: 평균은 넘겠지

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

www.acmicpc.net


 

<소스코드>

import sys

t = int(input())

for _ in range(t):
    cnt = 0
    lst = list(map(int, sys.stdin.readline().split()))
    avg = sum(lst[1:]) / lst[0]
    for i in lst[1:]:
        if i > avg:
            cnt += 1
        else:
            continue
    prp = (cnt / lst[0])*100
    print(str("%0.3f" %prp)+"%")

 

<NOTE>

1. 소수점 n번째 자리까지 표시하고 반올림

1) round함수 사용

: round(실수, n)

n = 0.423677

round(n, 3) #0.424
round(n, 2) #0.42

round()함수는 끝자리가 0이면 출력을하지 않으므로, 0을 채워서 원하는 자릿수를 맞추어 출력하려면 foramt() 함수를 사용해야 한다.

 

 

2) format사용

: format("%0.자릿수" %실수)

n = 40.36

print("%0.4f" %n) #40.3600
print("%0.3f" %n) #40.360
print("%0.1f" %n) #40.4

: "{:.자릿수f}".format(실수)

n = 53.146

print("{:.4f}".format(n)) #53.1460
print("{:.3f}".format(n)) #53.146
print("{:.2f}".format(n)) #53.15


#퍼센트(%) 기호 붙이기
print("{:.2f}%".format(n)) #53.15%

 

 

※추가: 올림, 내림, 버림

math 클래스 사용

· 올림: math.ceil(실수, n)

· 내림: math.floor(실수, n)

· 버림: math.trunc(실수, n)

import math

n = 12.51

math.ceil(n) #13
math.floor(n) #12
math.trunc(n) #12
728x90
반응형

댓글