LV2(8)
-
[Python] Programmers lv2 - 더 맵게
[Python] Programmers lv2 - 더 맵게 코딩테스트 연습 - 더 맵게 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 주어진 조건 음식의 스코빌 지수가 담긴 리스트 스코빌 지수의 최소 요구치 리스트 내의 모든 요소들이 해당 요구치를 넘어야 한다 풀이 아이디어(기존) 주어진 스코빌 지수 리스트를 heap에 넣어준다 heap으로 들어가면 작은 순서대로 정렬이 되며 pop을 하는 경우에도 작은 순서대로 나오게 된다 heap에서 두 개의 원소를 꺼내서 조건에 맞게 조립 후 총 조립 횟수의 cnt와 요구치를 넘었는지 확인한다 풀이 아이디어 ( 오답 후 조건 추가 - 문제를 다각도로 분석 및 조건 설정의 미숙함 존재 ) 첫 번째 원소를 pop 하고 힙에 남아있는 원소가 있는지 체..
2024.02.11 -
[Python] 프로그래머스 lv2 - 뉴스 클러스터링
[Python] 프로그래머스 lv2 - 뉴스 클러스터링 코딩테스트 연습 - [1차] 뉴스 클러스터링 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 주어진 문자열(특수문자 제외)의 교집합과 합집합을 구해서 값을 구하는 문제이다 마지막 도출 값은 교집합/합집합*65536을 곱해주고 뒤에 소수점은 버려주는 것이 조건이다 풀이 코드 각각의 문자열의 부분집합 생성 2개의 문자를 가진 문자열을 생성한다. 이때 문자열에 특수문자가 끼어있는 경우 제외한다. -> isalpha() 사용 문자열의 경우 대..
2024.02.01 -
[Python] 프로그래머스 lv2 (2019 카카오 개발자 겨울 인턴쉽) - 튜플
[Python] 프로그래머스 lv2 - 튜플 코딩테스트 연습 - 튜플 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 사실문제를 이해하는데 되게 오래 걸렸던 문제였다. 정확히 말하면 출력값을 지정하는 부분에서 오래 걸렸다. 주어진 문자열 튜플 중에서 나오는 원소들을 리스트에 넣어라. 이때 넣어지는 원소는 중복값이 들어가면 안 된다라는 점이었다. 다만 출력의 방식에서 문제가 생겼다. 출력값 result를 보면 순서가 정해져 있었는데 해당 순서를 어떤 기준을 통해 열거되어있는지를 찾아야 하는데..
2024.01.31 -
[Python] 프로그래머스 lv2 - 타겟 넘버
[Python] 프로그래머스 lv2 - 타겟 넘버 코딩테스트 연습 - 타겟 넘버 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 주어진 숫자 리스트의 내부 원소를 각각의 +-를 진행하여 계산 이때 최종적으로 계산된 결괏값이 target과 같은 경우를 종합하여 최종 경우의 수를 출력 DFS/BFS 카테고리 재귀로 풀이 total 값에 각각의 idx를 더하기, 빼기를 진행하여 total 값 변경을 진행 풀이 코드 answer=0 def recur(numbers, target, idx,total): global answer if idx == len(numbers): if total == target: answer+=1 return recur(numbers, target, idx+1, tot..
2024.01.03 -
[Python] 프로그래머스 lv2 - 소수 찾기
[Python] 프로그래머스 lv2 - 소수 찾기 코딩테스트 연습 - 소수 찾기 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 주어진 숫자는 문자열로 주어진다 문자열로 주어진 숫자를 하나씩 나눠서 리스트로 변경한다 주어진 숫자를 한자리 숫자로 변경한 뒤 순열을 사용해서 만들 수 있는 숫자 문자열을 만든다 해당 문자열을 만들고 set의 성질을 사용해서 중복 값 제거 만들어진 문자열의 경우 [ [" 0 " , " 1 " , " 1 " ] ]의 형태로 존재하기에 join 메서드를 통해 리스트의..
2024.01.03 -
[Python] 프로그래머스 lv2 - 두 큐 합 같게 만들기
[Python] 프로그래머스 lv2 - 두 큐 합 같게 만들기 코딩테스트 연습 - 두 큐 합 같게 만들기 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 여기서 2번의 과정을 구현해야겠다고 생각을 했다. 두 큐의 합을 구하면서 비교 비교 후 합의 값이 큰 큐에서 pop(0)하여 다른 큐에 append 해주는 방식을 채택 해당 과정당 cnt의 증가로 과정을 체크 반환 값의 경우 큐의 합들이 동일하면 cnt 반환, 값이 틀리면 -1 반환 처음 1번의 과정을 진행하기 전 두 개의 큐의 합이 홀수..
2024.01.02