https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 코딩테스트 고득점 Kit의 해시 Level 2 문제다. 문제는 쉬운데 어떻게 접근해야 할지 도저히 감이 안잡혀서 아래의 글을 참고했다. https://school.programmers.co.kr/questions/33347 알고리즘을 활용한다기 보다는 중학교 때 배웠던 수학개념을 활용해야 하는 거였다. (ㅜㅜ) 옷 종류의 갯수를 각각 HashMap에 넣고그 갯수 + 1을 모두 곱한 값..
https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 코딩테스트 고득점 Kit의 해시 Level 2 문제다. String의 startsWith 메소드를 알고 있다면 너무 쉽게 풀 수 있었다. 배열을 정렬한 후 for문을 통해 i번째의 문자열이 i-1번째 문자열으로 시작하는 게 하나라도 있으면 false를 반환하고, 없으면 true를 반환한다. import java.util.Arrays; class Solution { public bool..
https://school.programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 코딩테스트 고득점 Kit의 해시 Level 1 문제다. 만약 폰켓몬이 8마리이면, 총 4마리의 폰켓몬을 가져갈 수 있을 것이다. 여기서 3종류의 폰켓몬이 있다면, 최대 3종류의 폰켓몬을 가져갈 수 있고, 4종류 이상의 폰켓몬이 있다면 최대 4종류의 폰켓몬을 가져갈 수 있다. 이를 간단히 표현하면 다음과 같다. 폰켓몬 종류 >= 가져갈 수 있는 폰켓몬 갯수 ---> 가져갈 수 있는 폰켓몬..
https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코딩테스트 고득점 Kit의 해시 Level 1 문제다. 두 배열을 정렬한 후 for문으로 같은 인덱스에 접근한 값이 다를 때 answer에 대입한다. 또한 participant 배열의 사이즈가 completion 배열의 사이즈 보다 1 크므로 completion 배열의 사이즈가 넘어갈 때까지 다른 값을 찾지 못한다면 마지막 값이 완주하지 못한 선수이므로 answer에 마지막 값을 대입한다. imp..
https://school.programmers.co.kr/learn/courses/30/lessons/118668 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2020 KAKAO TECH INTERNSHIP Level 3 문제다. 맨 처음의 알고력과 코딩력을 알고 있기 때문에 bottom-up dp를 통해 구현했다. 레벨 3치고는 꽤나 단순하게 접근 가능한 문제인 것 같다. 2차원 배열을 통해 알고력과 코딩력에 도달하기 위해 필요한 시간을 저장한다. 예를 들어 dp[10][20]에 2가 저장되어 있다면 알고력 10, 코딩력 20에 도달하기까지 2초의 ..
https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2022 KAKAO TECH INTERNSHIP Level 2 문제다. 처음엔 int[]에 담겨있는 값을 실제 Queue에 담아 dfs로 하나씩 빼고 저장하려고 했는데, 입출력 예시 #2와 같이 queue1에서 queue2으로부터 받은 원소를 다시 queue2로 보내는 경우는 해결하지 못했다. 그래서 투포인터를 이용해 구현했고, 입출력 예시 #2와 같은 상황을 처리하기 위해 queue1과 que..
https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2022 KAKAO TECH INTERNSHIP의 Level 1 문제다. 문제 자체는 어렵진 않은데 문제를 이해하는데 시간을 꽤나 썼던 것 같다. 먼저 성격 유형과 성격 유형의 점수를 나타내는 Node 클래스를 생성하고, 점수 0을 가지는 모든 성격 유형의 Node를 ArrayList에 저장한다. 그리고 choice에서 어떤 값을 선택했는지에 따라 성격 유형 Node의 점수를 더한다. 이 때 각..
https://school.programmers.co.kr/learn/courses/30/lessons/81302 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2021 카카오 채용연계형 인턴십 Level 2 문제다. dfs나 bfs로 접근할 수 있지만 나는 배열을 끝까지 탐색하며 응시자인 경우 거리두기를 지켰는지 확인했다. 거리두기를 위반한 경우는 1. 바로 옆이 응시자인 경우 2. 대각선이 응시자고 대각선 사이에 테이블이 있는 경우 3. 맨해튼 거리 2에 응시자가 있고 그 사이에 테이블이 있는 경우 이렇게 세가지기 때문에 세가지 경우에 해당하는 배열을..