반응형

전체 33

[프로그래머스] 같은 숫자는 싫어 - 파이썬 / insert 메소드 시간복잡도

문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 ..

코딩테스트 2025.05.15

[프로그래머스] 완주하지 못한 선수 - 파이썬 / Counter

Counter는 내장 라이브러리인 collections에 있는 클래스로,dictionary를 상속받아서 데이터가 딕셔너리처럼 생겼다.Counter는 리스트 안의 원소들의 빈도를 세어서 dictionary 형태로 저장한다. from collections import Counterdef solution(participant, completion): p_count = Counter(participant) c_count = Counter(completion) diff = p_count - c_count return list(diff.keys())[0]Counter는 오버로딩으로 뺄셈 연산을 할 수 있다. 아무래도 빈도를 구하다보니 원소의 빈도끼리 연산을 하면 원소에 연산된 빈도가 반..

코딩테스트 2025.05.07

[토익 벼락치기] 인생 첫 토익 6일 벼락치기로 950점 맞은 공부법 및 꿀팁, 문제 푸는 법, 시험장 예행 연습

바야흐로 토익 시험 전 8일... 제출해야 되는 서류에 영어공인인증 시험 성적이 필요하다는 사실을 발견했다... 그래서 토익, 탭스, 토플 중 가장 만만하다고 들은 토익을 지원했다.태어나서 처음보는 시험이어서 문제 유형이 어떻게 되는지도 몰랐지만 일단 접수부터 했다.접수는 아래 토익 공식 사이트에서 진행하면 된다. https://m.exam.toeic.co.kr/receipt/receiptStep1.php TOEIC® 공식 사이트전 세계 160개 이상 국가, 14,000여 개의 기관 및 업체에서 채용, 승진, 해외파견 등에 활용하는 글로벌 시험exam.toeic.co.kr토익은 거의 2주 단위로 시험을 보는 것 같다.그래서 필자가 접수할 때쯤에는 시험이 1주 뒤 또는 3주 뒤였는데, 솔직히 3주동안 ..

카테고리 없음 2025.04.27

[프로그래머스] 교점에 별 만들기 - 파이썬

문제 분해1. 두 직선의 교점 구하기. 근데 x, y가 둘 다 정수인! => itertools의 combination으로 직선의 조합을 구하자.2. 별을 찍어줄 수 있는 최대 범위 구하기. 그러기 위해선 x 좌표값 중 최대 최소, y 좌표값 중 최대 최소를 구해야됨. (상자를 그리기 위한 좌우, 상하를 구한다고 생각하면 된다.)3. .(점) 으로 2차원 배열 초기화. x와 y의 최대 최소를 사용해서 초기화해야됨.4. 교점에 속한 인덱스를 *(별)로 업데이트. 수학의 평행이동 개념을 사용한다. 배열에 접근하는 거니 좌표가 아닌 인덱스로 접근해야됨을 헷갈리지 말기.5. row별로 join해서 return하기~ 코드주석으로 설명을 작성해 놓았다. from itertools import combinationsd..

코딩테스트 2025.04.26

[백준] 1158 요세푸스 문제 - 파이썬

문제요세푸스 문제는 다음과 같다.1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다.N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오.입력첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)출력예제와 같이 요세푸스 순열을 출력한다. 첫 코드# 리스트로 구현할 수 있는데 꼭 deque로 구현할 필요가 있을까..

코딩테스트 2025.04.25
반응형