본문 바로가기

분류 전체보기

(158)
99클럽 코테 스터디 9일차 TIL, 백준 / 1927 / 최소 힙 🔑 오늘의 학습 키워드 : heap🔗 문제링크 https://www.acmicpc.net/problem/1927 import sysimport heapqinput = sys.stdin.readline# 최소힙hq = []n = int(input())for i in range (n): x = int(input()) if x == 0: print(0) if len(hq) == 0 else print(heapq.heappop(hq)) else : heapq.heappush(hq,x)python 🗒️ 공부한 내용 본인의 언어로 정리하기🤔 문제를 보고 든 생각heap 구현 문제구나 파이썬 heapq 모듈을 활용해서 해야겠다. 파이썬 heapq 모듈은 최소힙을 지원하기 때문에 그대로 가져다 ..
99클럽 코테 스터디 8일차 TIL, 프로그래머스 / 두 큐 합 같게 만들기 🔑 오늘의 학습 키워드 : Queue🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/118667 from collections import dequedef solution(queue1, queue2): answer = 0 q1 = deque(queue1) q2 = deque(queue2) sum1 = sum(queue1) sum2 = sum(queue2) # 홀수인 경우 if (sum1 + sum2) % 2 != 0: return -1 while True: if answer == 4 * len(queue1): retur..
99클럽 코테 스터디 7일차 TIL, 프로그래머스 / 과제 진행하기 🔑 오늘의 학습 키워드 : 스택🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/176962 def solution(plans): stack = [] # 처리 중인 작업을 저장하는 스택 answer = [] # 완료된 작업의 순서를 저장하는 리스트 # 시간 및 소요 시간 정리 for i in range(len(plans)): h, m = map(int, plans[i][1].split(':')) # 시작 시간을 시간과 분으로 분리 plans[i][1] = h * 60 + m # 시작 시간을 분 단위로 변환 plans[i][2] = int(plans[i][2]) ..
99클럽 코테 스터디 6일차 TIL, 프로그래머스 / 테이블 해시 함수 🔑 오늘의 학습 키워드 : 정렬?🔗 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/147354def solution(data, col, row_begin, row_end): answer = 0 data.sort(key = lambda x : (x[col-1],-x[0])) for i in range (row_begin-1, row_end): tmp = 0 for d in data[i]: tmp += d % (i+1) answer ^= tmp return answer 🗒️ 공부한 내용 본인의 언어로 정리하기🤔 문제를 보고 든 생각문제를 이렇게 풀어라 하고 조..
99클럽 코테 스터디 5일차 TIL, 프로그래머스 / 베스트앨범 🔑 오늘의 학습 키워드 : dictionary🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/42579 from collections import defaultdictdef solution(genres, plays): answer = [] streaming = defaultdict(int) each_played = defaultdict(list) # 장르별 플레이 횟수와 플레이 정보를 저장 for idx,(genre,play) in enumerate(zip(genres,plays)): each_played[genre].append((idx,play)) streaming[gen..
99클럽 코테 스터디 4일차 TIL, 프로그래머스 / 문자열 압축 🔑 오늘의 학습 키워드 : 슬라이딩 윈도우def solution(s): def compress(s, length): compressed = [] prev = s[:length] count = 1 for i in range(length, len(s), length): current = s[i:i+length] if current == prev: count += 1 else: if count > 1: compressed.append(str(count)) compres..
99클럽 코테 스터디 3일차 TIL, 프로그래머스/숫자 문자열과 영단어 🔑 오늘의 학습 키워드 : replacedef solution(s): english = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine'] for idx,e in enumerate(english): s = s.replace(e,str(idx)) return int(s) 🗒️ 공부한 내용 본인의 언어로 정리하기replace()함수를 사용해서 해당 문자를 숫자로 바꿔주면 된다.✅ 오늘의 회고너무 쉬워서 할말을 잃어버렸다. 코드도 직관적이니 이해하기 쉬울 것 같다.필수 해시태그: #99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL
99클럽 코테 스터디 2일차 TIL, 프로그래머스/숫자 카드 나누기도움말 🔑 오늘의 학습 키워드 : 내장 함수import mathfrom functools import reducedef solution(arrayA, arrayB): answer = 0 gcdA = reduce(math.gcd, arrayA) gcdB = reduce(math.gcd, arrayB) if gcdA != 1 and all(b % gcdA !=0 for b in arrayB) and gcdA >= answer: answer = gcdA if gcdB != 1 and all(a % gcdB !=0 for a in arrayA) and gcdB >= answer: answer = gcdB return answer 🗒️ 공부한 내용 본인의 언어로 정리하기문제를 ..