본문 바로가기
반응형

알고리즘 풀이164

[프로그래머스] 당구 연습(Java) https://school.programmers.co.kr/learn/courses/30/lessons/169198 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 당구 연습 문제 당구를 쳤을때 굴러간 거리의 최솟값의 제곱을 반환하는 문제 #사용 알고리즘 구현 조건에 따른 분기 📌문제 접근 포인트 1. 당구를 친다고 가정했을 때 1곳의 벽에 무조건 닿은 후 공을 맞춰야 하므로 각각의 벽면까지 거리의 제곱을 구해보자. 2. 거리를 구하기 위해서는 (A - 벽까지의 거리 + 벽 - 도착점 까지 거리)를 이용 하는 방법도 있겠지만, A에서 치는 방향을 기준으로 .. 2024. 4. 10.
[프로그래머스] 연속된 부분 수열의 합(Java) https://school.programmers.co.kr/learn/courses/30/lessons/178870 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 연속된 부분 수열의 합 문제 오름차순으로 정렬된 수열에서 조건에 맞는 부분수열의 시작, 끝 인덱스를 찾는 문제 #사용 알고리즘 투포인터(two pointers) 📌문제 접근 포인트 1. 오름차순으로 정렬된 수열에서 연속된 부분 수열의 합이 K가 되는 수열을 찾기 위해서는 투포인터를 사용하여 찾아나가면 된다. 2. 왼쪽과 오른쪽이 같은 지점에서 시작하여 K보다 작으면 오른쪽을, K보다 크면 왼쪽을.. 2024. 4. 10.
[프로그래머스] 리코쳇 로봇 (java) https://school.programmers.co.kr/learn/courses/30/lessons/169199 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 리코쳇 로봇 문제 보드판에서 R부터 시작해서 장애물이나 벽에 도달할 떄 까지 슬라이딩하는 과정을 반복해서 G에 도착하는 최소 값을 구하는 문제 #사용 알고리즘 너비 우선 탐색(BFS) 📌문제 접근 포인트 1. 벽을 만날 때까지 미끄러지는 점을 제외하곤 일반 BFS 구현 문제와 동일하다. BFS에서 미끄러지도록 이동하게만 구현해주면 된다. 2. 단순 BFS를 생각했을때 한쪽 방향으로 끝까지 이동할.. 2024. 4. 10.
[프로그래머스] 인사고과(java) https://school.programmers.co.kr/learn/courses/30/lessons/152995 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 인사고과 문제 태도 점수와 평가 점수를 비교해서 인센티브를 몇 등으로 받을 수 있는지 찾는 문제 #사용 알고리즘 정렬 그리디(greedy) 📌문제 접근 포인트 1. 태도 점수와 평가 점수를 고려 후, 점수의 합으로 순위를 찾기 위해 우선 태도 점수를 기준으로 내림차순, 평가를 기준으로 오름차순 정렬해주자. 이렇게 정렬하면 태도 점수로 순위가 고정이 되므로 평가 점수만 고려해주면 되는 문제가 된다.. 2024. 4. 9.
[프로그래머스] 미로 탈출 (java) https://school.programmers.co.kr/learn/courses/30/lessons/159993 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 미로 탈출 문제 미로를 탈출하되, 레버를 먼저 누르고 나서 출구로 탈출하는 문제 #사용 알고리즘 너비 우선 탐색(BFS) 📌문제 접근 포인트 1. 최단 거리로 빠르게 미로를 탈출하는데 걸리는 시간을 구하는 알고리즘으로 BFS를 사용한다. 2. 시작부터 레버까지 도착 후, 레버에서 출구까지 걸리는 시간 중 최소 시간을 구해야한다. 3. 시작부터 레버까지 갈 수 있는지 체크한 후, 레버에서 출구까지.. 2024. 4. 9.
[프로그래머스] 삼각 달팽이(Java) https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 삼각 달팽이 문제 달팽이 형태로 그리면서 채울 때 배열 순서대로 반환하는 문제 #사용 알고리즘 구현 📌문제 접근 포인트 1. 사각이 아닌 삼각으로 움직이는 달팽이의 모습을 생각해야한다. n의 갯수는 1부터 n까지의 합만큼만 달팽이가 움직이는걸 예시를 통해 확인할 수 있다. 2. 달팽이의 움직이는 모양을 생각해보자. 삼각형이므로 ↙→↖ 이렇게 3 방향으로 움직이는거로 보이지만, 우리가 배열로 생성할.. 2024. 4. 8.
반응형