Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

travel data science

백준 4344번 문제 본문

Python study

백준 4344번 문제

가방이 2021. 10. 4. 23:34
num=int(input())
for i in range(num):
    class_=list(map(int, input().split()))
    c=0
    for k in class_[1:]:
        if k>(sum(class_[1:])/class_[0]):
            c+=1
    print('%.3f%%'%float((c/class_[0])*100))

문제에서 어려웠던 부분

1. 결과 값이 40.0이 나와도 소수점 세자리까지 출력해야함.

=>round함수는 반올림에 사용하는 함수이므로 40.0은 40.000으로 출력하지 않음

=>포매팅을 통해서 해결해야함. %.3f를 print에 넣어서 사용하면 된다.

print('hello number is %.3f' % (3.141592))

#결과는 
#hello number is 3.141
#이 나온다.

2. value error가 일어나는데 왜 그런지 도통 문제를 찾을 수가 없었다.

=>원인은 %였다. print내에 그냥 %(출력용)이 있다면 %를 두 번 써줘야 한다.

print('number is %.3f%%' % (3.141592))

#결과는
#number is 3.141%
#로 나온다.

'Python study' 카테고리의 다른 글

백준 11654번 문제(파이썬 아스키코드)  (0) 2021.10.06
백준 4673번 문제  (0) 2021.10.06
백준 2577번 문제  (0) 2021.10.04
백준 1110번 문제  (0) 2021.10.04
백준 10951번 문제  (0) 2021.10.03