Dev_Jaekwan
article thumbnail
프로그래머스 - 카드 뭉치 [Python]
Algorithm 2023. 2. 17. 01:12

문제설명 해결코드 단순 구현 문제이지만, 가독성 있게 짜보려고 고생을 좀 했습니다. 코드는 역시 단순하면서 가독성이 좋게 보는 것이 가장 좋은 코드라고 생각합니다. def solution(cards1, cards2, goal): for g in goal: if len(cards1) > 0 and g == cards1[0]: cards1.pop(0) elif len(cards2) > 0 and g == cards2[0]: cards2.pop(0) else: return "No" return "Yes"

article thumbnail
프로그래머스 - 둘만의 암호 [Python]
Algorithm 2023. 2. 6. 23:23

문제설명 해결코드 프로그래머스 1단계에 해당하는 문제이다. 솔직히 문제 자체는 어렵지 않은데 테스트 케이스가 별로 없어서 약간 중의적인 해석이 가능했던 문제라 아마도 정답률이 적은거 같다. def solution(s, skip, index): abc = [chr(i) for i in range(97, 123) if not chr(i) in skip] * 3 answer = '' for i in s: answer += abc[abc.index(i) + index] return answer 코드해설 코드 해설은 입출력 예제 1번을 통해 진행하도록 하겠습니다. 풀이설명1 # 풀이설명1 : ASCII 코드로 알파벳 배열 만들기. 단 skip에 들어가는 글자는 제외 abc = [chr(i) for i in ran..

article thumbnail
프로그래머스 - 호텔 대실 [Python]
Algorithm 2023. 2. 3. 21:38

문제설명 해결코드 그리디를 사용해서 구현하였다. 문제에 주어진 book_time의 길이 즉 예약이 1000개 이하기 때문에 O(n2)으로 풀어도 된다는 것을 감안하고 접근하였다. def solution(book_time): # 풀이설명1 : 함수 만들기 def change_min(str_time: str) -> int: return int(str_time[0:2]) * 60 + int(str_time[3:]) #풀이 설명2 : 예약 시간이 빠른 순으로 정렬하기 book_times = sorted([[change_min(i[0]), change_min(i[1]) + 10] for i in book_time]) #풀이 설명3 : 방 배정하기 rooms = [] for book_time in book_time..

검색 태그