본문 바로가기

이분탐색

(2)
[Algorithm/Swift] 프로그래머스(Lv.3) - 입국심사 안녕하세요 제인입니다! 요즘은 프로그래머스의 문제들을 꾸준히 풀면서 취약한 유형의 문제들을 프로그래머스, 백준에서 더 찾아서 연습해보는 방식으로 PS 실력을 꾸준히 향상시키려고 노력하고 있는데요, 오늘은 저번에 문제를 통해 이분탐색 문제를 처음 접하고, 더 연습해보고 싶어서 프로그래머스에서 이분탐색 연습문제를 찾아서 풀어봤습니다! 풀다보니 징검다리 건너기 문제와 비슷한 점이 많은 것 같아서 이분탐색 문제를 접했을 때 접근하는 방법에 대해 기록해두면 좋을 것 같아서 가져와봤습니다 :) 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 일단..
[Algorithm/Swift] 프로그래머스(Lv.3) - 징검다리 건너기 안녕하세요 제인입니다:) PS로 하루를 힘차게 시작하려고 했는데 이제 할 일을 좀 하고 문제를 풀어야겠어요...ㅇ maxElement { max = maxElement } pointer1 += 1 pointer2 += 1 } return max } 처음에는 투 포인터를 활용해 슬라이딩 윈도우 기법으로 k개의 디딤돌을 한 구간으로 설정해서 전체를 스캔하는 방식으로 풀었습니다. 왜냐하면, 징검다리를 더 이상 건너지 못하게 되는 순간은 적힌 숫자가 0이 되는 디딤돌이 k개 연달아 나오는 경우이기 때문에 길이가 k인 구간 안에서의 최댓값이 해당 구간을 건널 수 있는 사람의 최대 숫자라는 것을 파악했고, 항상 가장 가까운 돌을 밟아야 하므로 한 사람이 건널 때마다 전체 돌의 숫자가 1씩 감소하기 때문에 전체 다리..