반응형

코딩테스트 18

[Python - 프로그래머스] 코딩테스트 연습 > 탐욕법(Greedy) > 섬 연결하기

[Python - 프로그래머스] 코딩테스트 연습 > 탐욕법(Greedy) > 섬 연결하기 https://school.programmers.co.kr/learn/courses/30/lessons/42861# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 def solution(n, costs): # cost가 작은 기준으로 sort costs.sort(key = lambda x:x[2]) print(costs) # 가장 cost가 작은 거 부터 시작 bri..

[Python - 프로그래머스] 코딩테스트 연습 > 완전탐색 > 모음사전

[Python - 프로그래머스] 코딩테스트 연습 > 완전탐색 > 모음사전 https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 d = dict() d['A'] = 0 d['E'] = 1 d['I'] = 2 d['O'] = 3 d['U'] = 4 def solution(word): if len(word)

[Python - 프로그래머스] 코딩테스트 연습 > 완전탐색 > 피로도

https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import itertools def solution(k, dungeons): li = list(itertools.permutations(dungeons)) # print(li) cnt = list() for i in range(len(li)) : c = 0 k_ = k for j in li[i] : ..

[Python - 프로그래머스] 코딩테스트 연습 > 완전탐색 > 최소직사각형

https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 1 2 3 4 5 6 7 8 def solution(sizes): for i in sizes : if i[0]

[Python - 프로그래머스] 힙(Heap) > 디스크 컨트롤러

https://school.programmers.co.kr/learn/courses/30/lessons/42627 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 import heapq import numpy as np def solution(jobs): time1 = heapq.nlargest(len(jobs), jobs, key=lambda x: (x[0], x[1])) # 작업..

[Python - 프로그래머스] 스택/큐 > 올바른 괄호

문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. Solution 대표적인 스택/큐 문제이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 def solution(s): s ..

[Python - 프로그래머스] 힙(Heap) > 더 맵게

https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 이 문제는 사실 효율성이 더 중요한 문제다. 주어진 테스트 케이스를 모두 통과해도 효율성 테스트에서 실패하는 경우가 많다. 문제에도 나와있지만 heap으로 풀면된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 import heapq def solution(scoville, K): heapq.heapify(scoville) # list to heap cnt = 0 w..

[Python - 프로그래머스] 2023 KAKAO BLIND RECRUITMENT > 택배 배달과 수거하기

https://school.programmers.co.kr/learn/courses/30/lessons/150369#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 내가 했던 풀이는 다음과 같다. (아래 풀이는 테스트 15번부터 시간초과가 뜬다. 그 외 테스트 케이스는 통과이다.) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 import numpy as np import math import itertools def fun(del..

[Python - 프로그래머스] 2023 KAKAO BLIND RECRUITMENT > 개인정보 수집 유효기간

문제 설명 고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다. 예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다. 당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다. 모든 달은 28일까지 있다고 가정합니다. 다음은 오늘 날짜가 2022.05.19일 ..

[프로그래머스 - Python] 2020 KAKAO BLIND RECRUITMENT > 문자열 압축

(파이썬으로 코딩테스트 연습) Programmers > 2020 KAKAO BLIND RECRUITMENT > 문자열 압축 https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr Solution def solution(s): if len(s)==1 : return(1) answer = [] for i in range(1,int(len(s)/2)+1) : split_data = [s[z:z+i] for z in..

반응형