본문 바로가기
반응형

프로그래머스234

(Python/Queue) 우선순위 큐 큐가 FIFO 방식을 따르지 않고 원소들의 우선순위에 따라 큐에서 빠져나오는 방식 heapq 를 사용하면 맨 앞에 최솟값이라 heapq 를 사용하면 좋다. 활용 운영체제 cpu 스케줄러 구현 방법: 1. enqueue 할때 우선순위 유지 (더 유리) 2.Dequeue 할때 우선순위 높은 것을 선택하는 방법 선형 배열 보다 연결리스트 이용하는것이 더 유리(시간적) class Node: def __init__(self, item): self.data = item self.prev = None self.next = None class DoublyLinkedList: def __init__(self): self.nodeCount = 0 self.head = Node(None) self.tail = Node(No.. 2022. 11. 23.
(Python/LV3) 등굣길 문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/42898 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: def solution(m, n, puddles): dp = [[0]*(m+1) for _ in range(n+1)] dp[1][1] = 1 for i, j in puddles: # 웅덩이가 있는 곳은 -1로 표시 dp[j][i] = -1 for x in range(1,n+1): for y in range(1,m+1): if dp[x][y] == -1: dp[x][y] = 0.. 2022. 11. 20.
(Python/LV2) 숫자 카드 나누기 문제: 문제 설명 철수와 영희는 선생님으로부터 숫자가 하나씩 적힌 카드들을 절반씩 나눠서 가진 후, 다음 두 조건 중 하나를 만족하는 가장 큰 양의 정수 a의 값을 구하려고 합니다. 철수가 가진 카드들에 적힌 모든 숫자를 나눌 수 있고 영희가 가진 카드들에 적힌 모든 숫자들 중 하나도 나눌 수 없는 양의 정수 a 영희가 가진 카드들에 적힌 모든 숫자를 나눌 수 있고, 철수가 가진 카드들에 적힌 모든 숫자들 중 하나도 나눌 수 없는 양의 정수 a 예를 들어, 카드들에 10, 5, 20, 17이 적혀 있는 경우에 대해 생각해 봅시다. 만약, 철수가 [10, 17]이 적힌 카드를 갖고, 영희가 [5, 20]이 적힌 카드를 갖는다면 두 조건 중 하나를 만족하는 양의 정수 a는 존재하지 않습니다. 하지만, 철수가.. 2022. 11. 11.
(Python/연습문제)과일 장수 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/135808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이: def solution(k, m, score): score = sorted(score,reverse=True) res = [score[i:i+m] for i in range(0,len(score), m)] #res 는 m개씩 담은 리스트를 반환 result = [] for i in res : # res를 돌면서 if len(i) == m: # 박스에 다 채워져있으면 res.. 2022. 11. 10.
(Python/🥉5) 개수 세기 문제 출처: https://www.acmicpc.net/problem/10807 10807번: 개수 세기 첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거 www.acmicpc.net 문제 풀이: n = input() lust_N = list(map(int,input().split())) print(lust_N.count(int(input()))) 2022. 11. 5.
(Python/LV3) 정수 삼각형 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/43105 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이: def solution(triangle): dp = [[0]*len(triangle) for i in range(len(triangle))] dp[0][0] = triangle[0][0] for i in range(0, len(triangle)-1): for j in range(len(triangle[i])): dp[i+1][j] = max(dp[i+1][j], dp[i].. 2022. 11. 4.
반응형