본문 바로가기
반응형

코딩테스트13

[Java] 프로그래머스 - 징검다리 건너기 프로그래머스 징검다리 건너기 문제는 카카오 인턴쉽 기출 문제로, 징검다리를 최대 몇명이 건널 수 있는지 구하는 문제다. 난이도는 레벨3이며 이분탐색을 통해 해결할 수 있다. 프로그래머스 - 징검다리 건너기 문제 정보 알고리즘 분류 - 이진탐색 - 슬라이딩 윈도우 난이도 - Level 3 문제 요약 일렬로 놓여있는 징검다리의 디딤돌에는 각각 숫자가 적혀있으며, 한번 밟을 때마다 1씩 줄어듦 디딤돌의 숫자가 0이 되면 더이상 밟을 수 없으며, 가능한 다음 디딤돌로 건너 뛸 수 있음 밟을 수 있는 디딤돌이 여러개인 경우 무조건 가장 가까운 디딤돌로 가야 함 한번에 한명씩 징검다리를 건너는데, 한명이 다 건넌 뒤에 다음 사람 건넘 Q. 징검다리 각 디딤돌의 숫자 및 한번에 건너뛸 수 있는 최대 칸수 k가 주어졌.. 2023. 12. 7.
[Java] 프로그래머스 - 가장 먼 노드 프로그래머스 가장 먼 노드 문제는 그래프의 한 노드에서 가장 멀리 떨어져 있는 노드의 개수를 구하는 문제다. 난이도는 레벨3이며 그래프 탐색를 통해 해결할 수 있다. 프로그래머스 - XX 문제 정보 알고리즘 분류 - 그래프 탐색 난이도 - Level 3 문제 요약 n개의 정점으로 이루어진 그래프가 있다. 1번 노드에서 가장 먼 노드의 개수는? 문제 풀이 과정 1번부터 BFS로 돌면서 다른 노드들까지의 최단거리를 구함 최대 거리를 갖는 노드의 개수를 구함 코드 import java.util.*; class Solution { public int solution(int n, int[][] edge) { int answer = 0; int maxLen = 0; // 주어진 그래프 정보를 연결 리스트로 변환 L.. 2023. 11. 23.
[Java] 프로그래머스 - 단속카메라 프로그래머스 단속카메라 문제는 모든 차량이 단속 카메라를 만나게 할 수 있는 카메라의 최소 개수를 구하는 문제다. 난이도는 레벨3이며 그리디 알고리즘를 통해 해결할 수 있다. 프로그래머스 - 단속카메라 문제 정보 알고리즘 분류 - 그리디 난이도 - Level 3 문제 요약 각 차량의 고속도로 진입/진출 지점이 주어진다. 모든 차량이 적어도 하나의 단속 카메라를 만나게 하려면 필요한 단속카메라의 최소 개수는? 문제 풀이 과정 진출 지점 기준으로 오름차순 정렬 앞에꺼부터, 가장 마지막 카메라 지나면 패스, 안지나면 현재 차의 진출 지점에 카메라 추가 코드 public int solution(int[][] routes) { Arrays.sort(routes, (o1, o2) -> { if (o1[1] < o2.. 2023. 11. 9.
[Java] 프로그래머스 - 숫자 게임 프로그래머스 숫자 게임 문제는 두 팀이 숫자 게임을 해서 한 팀이 얻을 수 있는 최대 승점을 구하는 문제다. 난이도는 레벨3이며 그리디 알고리즘를 통해 해결할 수 있다. 프로그래머스 - 숫자 게임 문제 정보 알고리즘 분류 - 그리디 난이도 - Level 3 문제 요약 A팀 N명 vs B팀 N명 숫자 게임 모든 사원은 임의의 숫자를 하나씩 부여받는다. (1~10억) 모든 사원은 딱 한번씩만 경기한다. 경기 A 1명, B 1명이 나와서 숫자 비교를 한다. 큰 팀이 1점. 비기면 점수 없음. Q. A팀의 출전 순서가 공개되었을 때, B팀이 얻을 수 있는 최대 승점은? 문제 풀이 과정 N이 10000 이하니까 O(NlogN)까지 가능함 → 정렬 가능 무조건 A팀과 차이가 적게 이겨야 한다. A팀과 B팀 모두 내.. 2023. 11. 9.
반응형