코테 준비를 처음으로 시작!
일단 백준에서 파이썬 기초 문제집을 골라서 풀고 다시 파이썬에 대한 감을 익힐 예정이다.
💛 Python3 코드
백준 2884
H, M = map(int, input().split())
if M < 45 : # 분단위가 45분보다 작을 때
if H == 0 : # 0 시이면
H = 23
M += 60
else : # 0시가 아니면 (0시보다 크면)
H -= 1
M += 60
print(H, M-45)
백준 2525
hour, min = map(int, input().split())
c = int(input())
hour += c//60 # 몫
min += c%60 # 나머지
if(min >= 60):
min -= 60
hour += 1
if(hour >= 24):
hour -= 24
print(hour, min)
시간 -> // (몫)
분 -> % (나머지)
⭐️ 60분이 넘었을 경우, 24시가 넘었을 경우를 고려
백준 2480
정말 심플하게만 푼다면,
a, b, c = map(int, input().split())
if a == b == c:
print(10000+a*1000)
elif a == b:
print(1000+a*100)
elif a == c:
print(1000+a*100)
elif b == c:
print(1000+b*100)
else:
print(100 * max(a,b,c))
배열에서 같은 수가 몇개 있는지를 count해서 풀자.
arr = list(map(int, input().split()))
temp = 0
if len(set(arr)) == 1: # 3개가 동일한 경우
print((10**4) + (arr[0] * 1000))
elif len(set(arr)) == 3: # 모두 다른 경우
print(max(arr) * 100)
else: # 2개가 동일한 경우
for i in range(3):
if arr.count(arr[i]) == 2:
temp = arr[arr.index(arr[i])]
print(1000 + (temp * 100))
⭐️ set를 사용하자
- set(arr): 주사위 눈을 중복을 제거한 집합(set)으로 변환
- 만약 이 집합의 길이가 1이라면 주사위 눈이 모두 같다는 뜻
⭐️ 2개의 수가 동일한 경우에는 요소의 개수를 세준 후에 2개인 요소에 대해 temp에 값을 저장한다
- if arr.count(arr[i]) == 2: arr[0], arr[1], arr[2] 요소에 대한 개수를 세주고 2개인 게 있다면
- arr.index(arr[i]): 리스트 arr에서 arr[i]의 값을 처음 발견한 인덱스를 반환
- temp = arr[arr.index(arr[i])]: 인덱스에 해당하는 요소 찾아 temp에 저장
'Coding Test' 카테고리의 다른 글
[TIL/10.21] Algorithm: 자료구조 기초와 DFS/BFS (0) | 2023.10.22 |
---|---|
[TIL/10.20] Algorithm: 구현 (0) | 2023.10.19 |
[TIL/10.19] Algorithm: 그리디 알고리즘 (0) | 2023.10.19 |
[TIL/10.14] 백준 - 2차원 배열 골라풀기 (0) | 2023.10.14 |
[TIL/10.14] 백준 기초- 1차원 배열 (0) | 2023.10.14 |