반응형
문제
병역판정검사는 병역의무자들의 상태를 검사해 징병 여부와 징병 시 어느 방향으로 복무를 시키는 게 좋을지 판정하는 검사로, 남성들은 만 19세가 되는 해에 모두 병역판정검사를 받는다. 신체 등급이 1급부터 3급인 사람은 현역 입영 대상, 4급은 보충역, 5급은 전시근로역, 6급은 병역면제 처분을 받는다.
올해 20살이 된 준이와 친구들은 병역판정검사를 받아야 한다. 준이와 친구들은 매우 건강하기 때문에 다른 질병의 유무와 관계 없이 신장 및 체중으로만 신체 등급이 결정된다. 준이와 친구들의 신장과 체중이 주어지면 아래 표를 참고해 신체 등급을 알려주자.
↓신장(cm), 등급 → | 1급 | 2급 | 3급 | 4급 | 5급 | 6급 |
140.1 미만 | 체중과 관계없이 6급 |
|||||
140.1 이상 146 미만 | 체중과 관계없이 5급 |
|||||
146 이상 159 미만 | 체중과 관계없이 4급 |
|||||
159 이상 161 미만 | 16.0 이상 35.0 미만 | 16.0 미만 또는 35.0 이상 |
||||
161 이상 204 미만 | 20.0 이상 25.0 미만 |
18.5 이상 20.0 미만 또는 25.0 이상 30.0 미만 |
16.0 이상 18.5 미만 또는 30.0 이상 35.0 미만 |
16.0 미만 또는 35.0 이상 |
||
204 이상 | 체중과 관계없이 4급 |
문제풀이
import sys
T=int(input())
for _ in range(T):
a,b = map(int,sys.stdin.readline().split())
BMI = b/((a/100)**2)
if(a>=204):
print(4)
elif(a>=161):
if(BMI>=35 or BMI<16):
print(4)
elif(BMI>=20 and BMI<25):
print(1)
elif(20>BMI>=18.5 or 30>BMI>=25):
print(2)
elif(18.5>BMI>=16.0 or 35>BMI>=30):
print(3)
elif(a>=159):
if(35>BMI>=16):
print(3)
else:
print(4)
elif(a>=146):
print(4)
elif(a>=140.1):
print(5)
else:
print(6)
'프로그래밍 > 백준' 카테고리의 다른 글
[알고리즘] 백준 17944 파이썬 - 퐁당퐁당 1 (1) | 2022.10.12 |
---|---|
[알고리즘] 백준 25165 파이썬 - 영리한 아리의 포탈 타기 (3) | 2022.10.11 |
[알고리즘] 백준 17450 파이썬 - 과자 사기 (0) | 2022.10.09 |
[알고리즘] 백준 25495 파이썬 - 에어팟 (0) | 2022.10.09 |
[알고리즘] 백준 14568 파이썬 -2017 연세대학교 프로그래밍 경시대회 (0) | 2022.10.09 |