프로그래머스

    [프로그래머스] 개인정보 수집 유효기간 - 파이썬

    2023 KAKAO BLIND RECRUITMENT - 150370. 개인정보 수집 유효기간 [Lv. 1] https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 딱히 설명할 부분은 없는 Lv. 1 문제. String Slicing과, 유효기간은 개인정보를 보관할 수 있는 달 수를 나타내는 정수이며, 1 이상 100 이하입니다. 라는 설명에 주의하며, month -= 12, year += 1 을 만족할 때까지 반복해줘야 함에만 신경써주면 될 것..

    [프로그래머스] 미로 탈출 명령어 - 파이썬

    2023 KAKAO BLIND RECRUITMENT - 150365. 미로 탈출 명령어 [Lv. 3] https://school.programmers.co.kr/learn/courses/30/lessons/150365 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 우선, 'impossible'을 출력해야 하는 경우를 먼저 알아보자.. 간단하게 생각해 보면, 출발지에서 도착지까지 도달할 수 있는 최소 거리를 h라 했을 때, k = h+(0을 포함한 짝수) 여야 어떻게든 도달할 수 있다. 따라서, k보다 h가 작은 경우나, k = h + (홀수) 인 경..

    [프로그래머스] 표현 가능한 이진트리 - 파이썬

    2023 KAKAO BLIND RECRUITMENT - 150367. 표현 가능한 이진트리 [Lv. 3] https://school.programmers.co.kr/learn/courses/30/lessons/150367 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 우선 예시를 한번 쭉 나열해 보며 감을 잡자. depth..? height..? 가 1일 때는, 0, 1만이 표현 가능하다. height = 2이면, 1, 3번째 숫자 중 1이 있다면 2번째 숫자는 무조건 1이여야 하므로, 111, 110, 011, 010, (000)의 4(5)가지의 ..

    [프로그래머스] 택배 배달과 수거하기 - 파이썬

    2023 KAKAO BLIND RECRUITMENT - 150369. 택배 배달과 수거하기 [Lv. 2] https://school.programmers.co.kr/learn/courses/30/lessons/150369 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문제를 읽고 나서의 초견은, Greedy하게 접근하면 되지 않을까? 였다. 제일 먼 곳에서부터 배달/수거를 cap만큼 꽉꽉 채워서 왔다갔다 하는 식으로.. 일단 구현해보자. 조금 유의하며 코드를 작성했던 부분은, deliveries나 pickups 배열에서 값이 존재하는(0이 아닌) 가..

    [프로그래머스] 42884. 단속카메라

    [프로그래머스] 42884. 단속카메라 - 파이썬 https://school.programmers.co.kr/learn/courses/30/lessons/42884 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 그리디하게 풀어내면 어렵지 않게 풀 수 있다. 크게 생각할 거리가 없었던 문제. 풀이 routes 배열을 우선 진출 지점 기준으로 정렬해준 뒤, 배열을 하나씩 순회하며 검사. 범위 안에 카메라가 없다면 진출 지점에 카메라를 설치 (가장 적게.. Greedy하게 카메라를 설치하게 되는 최적의 위치) 범위 안에 카메라가 이미 설치되었다면 continu..

    [프로그래머스] 42861. 섬 연결하기

    https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 최소 신장 트리 (MST)의 Kruskal 알고리즘을 이용하여 풀었음. 우선 cost에 따라 오름차순으로 배열 정렬. vertex의 연결을 저장하고, Union-Find에 이용할 dicionary를 하나 생성하고, union-find를 구현(find, union func.) Kruskal 알고리즘을 적용해 cost가 낮은 순으로 정렬한 edge들에 대해 순회하며 사이클이 생기지 않도록 간선(..