본문 바로가기

전체 글

(161)
99클럽 코테 스터디 22일차 TIL, leetcode / maximal-rectangle 🔑 오늘의 학습 키워드 : 스택🔗 문제링크 https://leetcode.com/problems/maximal-rectangle/ class Solution: def maximalRectangle(self, matrix: List[List[str]]) -> int: if not matrix or not matrix[0]: return 0 rows = len(matrix) cols = len(matrix[0]) max_area = 0 heights = [0] * cols for i in range(rows): for j in range(cols): ..
99클럽 코테 스터디 19일차 TIL, 프로그래머스 / 조이스틱 🔑 오늘의 학습 키워드 : 그리디🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/42860 def solution(name): if set(name) == {'A'}: return 0 a_pos = ord('A') # 'A' : 65, 'Z' : 90 z_pos = ord('Z') answer = float('inf') for i in range(len(name)//2 + 1): l_r = name[-i:] + name[:-i] #왼쪽먼저 갔다가 + 오른쪽 r_l = name[i: :-1] + name[i+1:][::-1] # 기준점에서 빠꾸 + 좌..
99클럽 코테 스터디 18일차 TIL, 백준 / 일루미네이션 / 5547 🔑 오늘의 학습 키워드 : bfs🔗 문제링크 https://www.acmicpc.net/problem/5547 import sysinput = sys.stdin.readlinefrom collections import dequew,h = map(int,input().split())jido = [[0]*(w+2)]for _ in range (h): jido.append([0] + list(map(int,input().split())) +[0])jido.append([0]*(w+2))di = [ [(-1,-1),(0,-1),(1,0),(0,1),(-1,1),(-1,0)], [(0,-1),(1,-1),(1,0),(1,1),(0,1),(-1,0)]]def in_range(x,y): re..
99클럽 코테 스터디 17일차 TIL, 백준 / 사자와 토끼 / 17834 🔑 오늘의 학습 키워드 : 이분그래프🔗 문제링크 https://www.acmicpc.net/problem/17834 import sysfrom collections import dequeinput = sys.stdin.readline# 이분 그래프인지 아닌지 판별하는 함수# 각각의 그룹도 같이 returndef is_bipartite(n,graph): color = [None] * (n+1) def bfs(start): queue = deque([start]) color[start] = True while queue: node = queue.popleft() for near in graph[node]: ..
99클럽 코테 스터디 16일차 TIL, 프로그래머스 / N-Queen 🔑 오늘의 학습 키워드 : 재귀🔗 문제링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12952 def solution(n): global answer answer = 0 # 열과 대각선 사용 여부를 체크하는 배열 is_col = [False] * n is_up_down_diag = [False] * (2 * n - 1) is_down_up_diag = [False] * (2 * n - 1) def dfs(row): global answer if row == n: answer += 1 return for col..
99클럽 코테 스터디 15일차 TIL, 프로그래머스 / 소수 찾기 🔑 오늘의 학습 키워드 : 완전 탐색🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/42839 from collections import dequefrom copy import deepcopyimport mathdef solution(numbers): answer = 0 def is_prime(n): if n == 0 or n == 1: return False for i in range (2, int(math.sqrt(n))+1): if n % i == 0: return False return True ..
99클럽 코테 스터디 14일차 TIL, 프로그래머스 / 징검다리 🔑 오늘의 학습 키워드 : 이분 탐색🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/43236 def solution(distance, rocks, n): left = 0 right = distance rocks.sort() rocks.append(distance) while left n: break if removed > n: right = mid - 1 else : left = mid + 1 return left-1 🗒️ 공부한 내용 본인의 언어로 정리하기🤔 문제를 보고 든 생각distance가 10 ^..
99클럽 코테 스터디 13일차 TIL, 프로그래머스 / 입국심사 🔑 오늘의 학습 키워드 : 이분 탐색🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/43238?language=python3def solution(n, times): left = 1 right = max(times) * n while left = n: right = mid else: left = mid + 1 return left 🗒️ 공부한 내용 본인의 언어로 정리하기🤔 문제를 보고 든 생각시간 복잡도가 괴랄한 것을 보니 이것은 떠오르는 대로 풀면 안되고 알고리즘을 활용해서 풀어야한다는 생각이 들었다. 시간 별로 처리할 수 있는 심사처리량이 ..