728x90
📚문제
📝풀이
# 내 풀이 - 오답
# 1440번 타임머신
time = list(map(int,input().split(':')))
h = 0
for i in time:
if 0 < i < 13:
h += 1
print(h*2)
쉽게 풀 수 있을 것 같아서
조금 고민하다가 풀어봤는데
오답이 나온다
예제도 다 맞고 반례도 딱히 없는 것 같은데 흠
+백준 게시판에 반례 질문 올렸더니
한 분이 친절하게 답을 달아주셨다
문제에서 D의 범위가 0-9까지라고 하긴했지만
분과 초가 0-59까지라고 명시해줬으니
그 이상의 숫자들이 들어오진 않을거라고
무의식중에 생각해서 틀렸다
문제를 꼼꼼히 보고 잘 확인하자..
그래도 덕분에 조금 수정하여 내 방식대로 풀 수 있었다😀
# 1440번 타임머신
time = list(map(int,input().split(':')))
h = 0
x = 0
for i in time:
if 0 < i < 13:
h += 1
if 59 < i <100:
x -= 1
print(0 if x<0 else h*2)
✒️ 다른 풀이 방식
# 1440번 타임머신
time = list(map(int,input().split(':')))
hour = [h for h in range(1,13)]
sec = [s for s in range(60)]
cnt = 0
for i in range(3):
for j in range(3):
for k in range(3):
if i != j and j != k and i != k : # 시,분,초가 각각 다른 경우만 포함
if time[i] in hour and time[j] in sec and time[k] in sec:
cnt += 1
print(cnt)
3중 for문을 활용해서
time 리스트에서 시/분/초 가 모든 다른 경우에
시 가 hour 안에 있고
분/초가 sec안에 있는 경우에 cnt +1하여 시간 세는 경우에 추가
728x90
'Python(알고리즘,문제풀이) > BOJ(Bronze II)' 카테고리의 다른 글
백준 / 1668번 / 트로피 진열 / Python / 구 (0) | 2024.01.08 |
---|---|
백준 / 1592번 / 영식이와 친구들 / Python / 구현,시뮬레이션 (0) | 2024.01.08 |
백준 / 1408번 / 24 / Python / 수학,구현,사칙연산 (1) | 2024.01.06 |
백준 / 1371번 / 가장 많은 글자 / Python / 구현, 문자열, stdin.read() (0) | 2024.01.04 |
**백준 / 1333번 / 부재중 전화 / Python / 구현,시뮬레이션** (1) | 2024.01.04 |