본문 바로가기

파이썬35

[python] deque 활용법 기본 사용법 from collections import deque deque1 = deque('Hello') print(deque1) # deque(['H', 'e', 'l', 'l', 'o']) 스택(stack) append(), pop() deque1.append('!') print(deque1) # deque(['H', 'e', 'l', 'l', 'o', '!']) deque1.pop()# ! print(deque1) # deque(['H', 'e', 'l', 'l', 'o']) 큐(que) append(), appendleft(), pop(), popleft() deque1.appendleft('!') print(deque1) # deque(['!', 'H', 'e', 'l', 'l', 'o']).. 2023. 4. 25.
[python] 프로그래머스 괄호 회전하기 문제 : https://school.programmers.co.kr/learn/courses/30/lessons/76502 📜 접근 방법 문장(s)의 갯수만큼 반복문 돌린다. 만약 현재 문장에 괄호가 올바를 경우, (문장에 괄호가 올바르지 않을 경우 넘어간다.) 갯수(answer) + 1 맨 앞 문자를 맨 뒤로 보낸다. 좀더 쉬운 문제 : https://school.programmers.co.kr/learn/courses/30/lessons/12909 좀더 쉬운 문제의 풀이 : https://chipndale.tistory.com/98 ❌ 실패 코드 ✅ 정답 코드 from collections import deque # 문장에 괄호가 알맞게 있는지 확인하는 함수 def check_symmetry(s): .. 2023. 4. 24.
[python] 프로그래머스 호텔 대실 📜 접근 방법 시작 시간을 기준으로 오름차순을 한다. 리스트에 끝나는 시간을 넣는다. 시작시간과 끝나는 시간을 비교하여 시작시간이 끝나는 시간 + 10분보다 작으면 객실 수를 추가한다. 비슷한 문제 : https://www.acmicpc.net/problem/1374 ❌ 실패 코드 문자열을 시간으로 바꾸는 것에서 문제가 생겼다. ✅ 정답 코드 from heapq import heappush, heappop def solution(book_time): answer = 0 heap = [] time_list = [] for s, e in book_time: time_list.append([int(s[:2]) * 60 + int(s[3:]), int(e[:2]) * 60 + int(e[3:])]) time_l.. 2023. 4. 16.
[python 백준 16953] A->B 📜 접근 방법 역으로 B에서 시작해서 A를 만들수 있는지 확인하는 방식으로 짰다. ❌ 실패 코드 45%정도에서 틀렸다고 했는데 else 부분에선 맨 뒤에 숫자가 1 뿐만아니라 홀수인 수들이 다 들어가서 나는 오류였다. s, e = map(int, input().split()) cnt = 1 while s < e: if e % 2 == 0: e //= 2 else: e //= 10 cnt += 1 if s == e: print(cnt) else: print(-1) ✅ 정답 코드 s, e = map(int, input().split()) cnt = 1 while s < e: if e % 2 == 0: e /= 2 cnt += 1 elif e % 10 == 1: e //= 10 cnt += 1 else: br.. 2023. 4. 12.