분류 전체보기

    [py] 17144_미세먼지 안녕!

    2차원 구현 문제였다. 파이썬으로는 오랜만에 푸는 것 같다 https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 문제에서 주어진 대로 따라가며 구현만 해주면 된다! 1. 확산하기 확산을 할 때 조금 헷갈릴 수 있다. 위와 같이 먼지들이 붙어있는 경우가 있는데 이때는 확산된 상태가 연동되며 미세먼지가 뿌려지는 것이 아닌 한번에 뿌려진다!!! 즉 이전 상태의 먼지 값에만 참조해서 확산을 해주면된다. 2. 청소하기 청소기가 작동하며 먼지들을 한칸씩 밀어..

    [JS] 지형 이동

    union-find를 응용해서 해결하였다. https://school.programmers.co.kr/learn/courses/30/lessons/62050 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 사실 어느정도 문제에서 힌트(?)가 있다. 아래와 같이 일종의 팀을 짜는 것이 중요하다. 즉, 서로 건너건너서 사다리 없이 갈 수 있는 공간을 한 팀이라고 생각했다. 이런경우 바로 떠오르는 방법이 유니온-파인드 알고리즘이었다. 따라서 문제푸는 방법자체는 아래와 같이 간단하게 정리되었다. 1. 유니온-파인드로 팀분리하기 2. 팀에서 다른팀으로 넘어가는 최소..

    SW 마에스트로(소프트웨어 마에스트로) 15기 합격

    일전에 지원했던 SW마에스트로 15기에 합격하였다! 좋은 경험이라고 생각하고 정말 열심히 해봐야겠다! 과정은 서류-> 1차코테 -> 2차코테 -> 면접 과정으로 진행되었다. 서류는 성실성을 보려는 목적이 큰것 같다. (실제로 서류탈락은 거의 없었던 듯) 이후 AL 4문제 + SQL 1문제로 이뤄진 1차코테를 보았다. SQL은 프로그래머스 고득점 키트를 풀면 크게 어렵지 않게 풀만했다. 알고리즘 문제들은 프로그래머스 1~2단계 정도로 나온 것 같다. (분위기상 2솔 이상분들이 많이 합격한 듯) 2차코테는 AL 4문제 + SQL 1문제로 구성되었으며 굉장히 어려웠다. SQL문제는 손도 못댔고 AL 1,2,3번을 해결하였다. 4번문항이 많이 까다로웠는데 시간적 여유가 없었던게 아쉽다 (ㅠㅠ) 끝나고 생각해보니..

    [JS] 트리 트리오 중간값

    트리 구조의 특징을 활용하여 해결하였다!! https://school.programmers.co.kr/learn/courses/30/lessons/68937 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제를 잘 읽어보면 정답이 "트리에서의 최장거리" 혹은 "트리에서의 최장거리 - 1"임을 알 수 있다. 1. 최장 거리의 두 점을 A,B라고 두고 A와 B사이에서 A혹은 B와 가장 인접한 점을 C로 두면 중간값이 최장거리 -1이 된다. 2. 최장거리가 여러 경우로 나오는 경우 3개의 점이 서로 최장거리가 되므로 중간값이 최장거리로 만들 수 있다. 즉, 해..

    [JS] 지형편집

    이분탐색을 응용한 방식으로 해결하였다! https://school.programmers.co.kr/learn/courses/30/lessons/12984 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 제한사항을 처음 읽고 든 생각은 이분탐색이었다. 모든 층을 검사하는건 10억이라는 수치상 말이 안되었기 때문이다. 이분탐색을 사용하려면 정렬된 데이터가 필요했다. 층수 자체는 정렬된 데이터긴 하지만 우리가 원하는 건 최소 비용이다. 이는 정렬되어 있지 않다. 여기서 아래 특징들을 짚고 넘어가면 좋을 것 같다. 1. 특정층 n에 도달하기 위한 비용을 계산할때는..

    [JS] 동굴탐험 (2020 카카오인턴십)

    어렵고 까다로운 그래프 문제였다. https://school.programmers.co.kr/learn/courses/30/lessons/67260 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제부터가 길고 복잡하기에 문제를 간략화할 필요가 있다. 결국 문제의 핵심은 "모든 노드를 방문할 수 있는가?"이다. 또다른 핵심은 A->B처럼 B노드에 방문하기 위해 A를 먼저 방문해야 하는 경우가 있지만 "중첩되지 않는다" 가 중요 포인트이다. 즉 특정 노드 N은 아무것도 아니거나, 방문하기 위해 선방문해야하거나, 후방문 해야한다. 문제를 해결한 방법을 설명하..