본문 바로가기

알고리즘 풀이/프로그래머스9

[프로그래머스] 방의 개수 - JAVA 🔗 문제 👨🏻‍💻 풀이 및 코드 접근 방법 사방이 막힌 도형이 만들어지는 조건은 이미 한번 방문한 점을 다시 방문한다면 도형이 만들어진다. 그림에서 빨간색 점을 방문했던 점이라고 한다면 마지막 빨간색 선, 즉 방문했던 점을 다시 방문했을 때 도형이 만들어진다. 단, 이미 그어진 선을 다시 잇는 경우는 안된다. 즉, 이미 이어진 선인지 체크해야 한다. 추가로 주의해야할 점은 대각선 체크를 위해 이동할 때 두 칸씩 이동해야 한다. 해당 그림처럼 이동했다면 삼각형이 하나 만들어지지만 위의 접근방식으론 갯수를 셀 수 없다. 같은 이동을 두 칸씩으로 바꾸면 대각선 경우의 도형의 갯수도 셀 수 있다. 정리 입력에서 주어진 방향대로 점을 이동시키면서, 이미 방문했던 점이고 처음 잇는 선이라면 도형의 갯수를 증가시킨다.. 2023. 6. 8.
[프로그래머스] Level 2. 두 원 사이의 정수 쌍 🔗 문제 👨🏻‍💻 풀이 및 코드 원에 포함된 정수 쌍의 갯수는 x^2 + y^2 = r^2 공식을 사용해 구할 수 있다. ex) 예제에 나온 r = 3 일 때의 정수 쌍의 갯수 x 가 1일 때, y 는 2루트2다. → 2.xx 따라서 y의 정수의 갯수는 0, 1, 2 (3개) x 가 2일 때, y 는 루트5다. → 2.xx 따라서 y의 정수의 갯수는 0, 1, 2 (3개) x 가 3일 때, y 는 0 이다. 따라서 y의 정수의 갯수는 0 (1개) 이제 원에 포함된 정수 쌍의 갯수를 구하는 법을 알았으니, 두 원 사이에 포함된 정수 쌍의 갯수를 구하려면 바깥 원에 포함된 정수 쌍의 갯수 - 안쪽 원에 포함된 정수 쌍의 갯수를 하면 된다. 주의해야 할 점이 정수 쌍의 갯수를 셀 경우, 안쪽 원의 테두리에 있.. 2023. 5. 12.
[프로그래머스] Level 2. 요격연습 - JAVA 🔗 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 👨🏻‍💻 풀이 및 코드 문제 유형 및 난이도 : 그리디 / Level 2 풀이 미사일을 시작 순으로 정렬하는 방법과 끝나는 시점 순으로 정렬하는 방법 2가지로 풀었다. 전체 코드 Sol1) import java.util.*; class Solution { public int solution(int[][] targets) { Arrays.sort(targets, (o1, o2) -> (o1[0] - o2[0])); // s 오름차순으로 정렬 int cnt = 0; int last = -1; // 커버할.. 2023. 4. 27.