Algorithm475 [파이썬] 프로그래머스 : 가장 큰 정사각형 찾기 (레벨2) [파이썬] 프로그래머스 : 가장 큰 정사각형 찾기 (레벨2)https://school.programmers.co.kr/learn/courses/30/lessons/12905 풀이방향성 생각누적합을 이용해서 반복 계산 줄이기누적합 배열 만들어주고, 큰 정사각형부터 찾을 수 있도록 3중 for문 돌리면서 탈출해주기.N**3이지만 탈출조건이 있어서 괜찮다. 전체코드def solution(arr): H,W = len(arr), len(arr[0]) cumsum = [[0]*(W+1) for _ in range(H+1)] for i in range(H): for j in range(W): cumsum[i+1][j+1] = cumsum[i][j+1] + cumsum[.. 2025. 3. 17. [파이썬] 프로그래머스 : 수식 최대화 (레벨2) [파이썬] 프로그래머스 : 수식 최대화 (레벨2)https://school.programmers.co.kr/learn/courses/30/lessons/67257 풀이방향성 생각연산자 순서 6개에 대해서 완탐 진행하기 전체코드def solution(expression): table = {"+":0, "-":1, "*":2} # 숫자 / 연산자 파싱 string = '' arr = [] count = [0,0,0] for exp in expression: if exp not in table: string += exp else: count[table[exp]] += 1 arr.append(in.. 2025. 3. 17. [파이썬] 프로그래머스 : 행렬 테두리 회전하기 (레벨2) [파이썬] 프로그래머스 : 행렬 테두리 회전하기 (레벨2)https://https://school.programmers.co.kr/learn/courses/30/lessons/77485 풀이방향성 생각덱을 이용해서 테두리 회전 구현하기. 전체코드from collections import dequedef solution(H,W,commands): # array 생성 arr = [[i*W+j+1 for j in range(W)] for i in range(H)] # 0 based로 만들어주기 queries = [] for cmd in commands: query = list(map(lambda x:x-1,cmd)) queries.append(query) .. 2025. 3. 17. [파이썬] 프로그래머스 : 마법의 엘리베이터 (레벨2) [파이썬] 프로그래머스 : 마법의 엘리베이터 (레벨2)https://https://school.programmers.co.kr/learn/courses/30/lessons/148653BFS/다익 -> 범위 넓어서 시간 초과.간선도 노드마다 20개 가량된다.테케 2번처럼 그리디하게 접근.1의 자리부터 접근해서 숫자를 그리디하게 처리한다.숫자가 4이하이면 빼주고 6이상이면 .5의 경우에는 다음 자리수도 봐야한다.재귀를 사용해서 다음 자리를 계속해서 탐색한다.def solution(x): answer = 0 def dfs(n): nonlocal answer if not n: return p,q = divmod(n,10) if 0=.. 2025. 3. 17. 이전 1 ··· 14 15 16 17 18 19 20 ··· 119 다음