반응형
밑의 링크는 백준에서의 문제 링크입니다.
파이썬 코드와 결과입니다.
# readline을 사용하기 위해 import합니다.
from sys import stdin
# 첫 번째 줄에 창영이가 궁금한 경우의 수 T를 입력합니다.
# 1 <= T <= 100
# 정수형으로 변환합니다.
T = int(stdin.readline())
# 경우의 수 T만큼 반복합니다.
for test_case_idx in range(T):
# 수업시간 d를 입력합니다.
# 1 <= d <= 10,000인 정수입니다.
# 정수형으로 변환합니다.
d = int(stdin.readline())
# 교수님이 지각할 수 있는 최대 시간 저장할 변수를 선언합니다.
# 0으로 초기화합니다.
t = 0
# 지각할 수 있는 최대 시간을 구할 때까지 반복합니다.
while True:
# 교수님이 지각한 시간과 수업할 수 있는 시간의 합을 저장하는 변수를 선언합니다.
late_and_lesson = t ** 2 + t
# late_and_lesson이 수업시간보다 크다면
if late_and_lesson > d:
# 최대 t - 1만큼 지각할 수 있으므로 t - 1을 출력합니다.
print(t - 1)
# 지각할 수 있는 최대 시간을 구했으므로 반복문을 탈출합니다.
break
# late_and_lesson이 수업시간보다 작거나 같다면
else:
# t에 1을 더해줍니다.
t += 1
코드를 짤 때 위의 코드보다 뭔가 더 간단히 풀 수 있는 문제인 것 같은데 방법이 떠오르지 않았습니다.
심지어 맞았습니다 결과를 보고 나서 다른 사람들의 파이썬 결과와 비교해보니
실행 시간도 느린 편이었습니다.
다른 고수분들의 코드도 공부해봐야겠습니다.
※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.
※ 더 효율적이고 빠른 정답을 환영합니다.
반응형
댓글