[프로그래머스] / [Level 2] / [Python] 택배상자
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/131704# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 리스트에서 원소를 찾기 위해 in or find를 사용하면 시간초과가 날 확률이 매우 높아진다 주의하자 ! from collections import deque def solution(order): answer = 0 main = deque([i for i in range(1, len(order)+1)]) sub = deque() for o in order: if len(main) > 0 an..
[프로그래머스] / [Level 2] / [Python] 롤케이크 자르기
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/132265 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr set 함수를 통해 중복을 제거하면서 비교하여 답을 구했지만, 시간초과를 출력하였습니다. def solution(topping): answer = 0 for i in range(1, len(topping)-2): A = set(topping[:i]) B = set(topping[i:]) if len(A) == len(B): answer += 1 return answer 해결 방법으로 dict에 ..
[프로그래머스] / [Level 2] / [Python] 할인 행사
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제를 꼼꼼히 읽어야 한다! from copy import deepcopy def solution(want, number, discount): answer = 0 if len(discount) < 15: discount = discount + discount[:15-len(discount)] B = dict() for w, n in zip(want, number): B[w] = n T = dee..
[프로그래머스] / [Level 2] / [Python] 연속 부분 수열 합의 개수
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(elements): answer = set() for i in range(1, len(elements)): E = elements + elements[:i-1] for j in range(len(E)-(i-1)): answer.add(sum(E[j:j+i])) answer.add(sum(elements)) return len(answer) print(solution([7,..
[프로그래머스] / [Level 2] / [Python] 귤 고르기
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr collections 모듈의 Counter 클래스를 사용하여 해결하였습니다. from collections import Counter as C def solution(k, tangerine): answer = 0 for c in C(tangerine).most_common(): k -= c[1] answer += 1 if k
[백준] / [Python] / [11066] 파일 합치기
·
Coding Test/백준
https://www.acmicpc.net/problem/11066 11066번: 파일 합치기 소설가인 김대전은 소설을 여러 장(chapter)으로 나누어 쓰는데, 각 장은 각각 다른 파일에 저장하곤 한다. 소설의 모든 장을 쓰고 나서는 각 장이 쓰여진 파일을 합쳐서 최종적으로 소설의 완성본 www.acmicpc.net 문제 소설가인 김대전은 소설을 여러 장(chapter)으로 나누어 쓰는데, 각 장은 각각 다른 파일에 저장하곤 한다. 소설의 모든 장을 쓰고 나서는 각 장이 쓰여진 파일을 합쳐서 최종적으로 소설의 완성본이 들어있는 한 개의 파일을 만든다. 이 과정에서 두 개의 파일을 합쳐서 하나의 임시파일을 만들고, 이 임시파일이나 원래의 파일을 계속 두 개씩 합쳐서 소설의 여러 장들이 연속이 되도록 파..
[백준] / [Python] / [11286] 절댓값 힙
·
Coding Test/백준
https://www.acmicpc.net/problem/11286 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제 절댓값 힙은 다음과 같은 연산을 지원하는 자료구조이다. 배열에 정수 x (x ≠ 0)를 넣는다. 배열에서 절댓값이 가장 작은 값을 출력하고, 그 값을 배열에서 제거한다. 절댓값이 가장 작은 값이 여러개일 때는, 가장 작은 수를 출력하고, 그 값을 배열에서 제거한다. 프로그램은 처음에 비어있는 배열에서 시작하게 된다. 입력 첫째 줄에 연산의 개수 N(1≤N≤100,000)..
[백준] / [Python] / [1927] 최소 힙
·
Coding Test/백준
https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제 널리 잘 알려진 자료구조 중 최소 힙이 있다. 최소 힙을 이용하여 다음과 같은 연산을 지원하는 프로그램을 작성하시오. 배열에 자연수 x를 넣는다. 배열에서 가장 작은 값을 출력하고, 그 값을 배열에서 제거한다. 프로그램은 처음에 비어있는 배열에서 시작하게 된다. 입력 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보..
욱근욱
'분류 전체보기' 카테고리의 글 목록 (35 Page)