해설
처음에 위처럼 풀었다.
그리디의 핵심인 정렬을 내림차순으로 해서 큰 숫자부터 뽑았다.
그리고 리스트가 1개보다 많이 있을때만 반복문을 돌렸다.
리스트의 제일 큰 요소를 꺼내서 가장 작은 요소랑 비교해서 limit보다 작거나 같을때만 제일 작은 요소를 뽑았다.
-> 이게 되는 이유는 한 번에 최대 2명씩 밖에 탈 수 없고 라는 조건이 있기 때문에 제일 큰요소와 제일 작은 요소가 합쳐져서 limit보다 작아서 다른 요소를 더해서 limit가 안넘더라도 2개가 됐으므로 빼줘야한다.
근데 결과가 제대로 안나왔다.
이유는 바깥에서 빼버려서이다. if문을 돌리고 나서 빼야하는데, if 돌리기 전에 빼버려서 1개가 안돌아갔다.
if 안에서 if 조건 체크 후 맨끝과 처음을 빼야하는거다.
계속 같은 유형만 풀다보니 이제 어떻게 접근해야하는 지는 감이 잡히는데
아직 구현이 잘 안된다.
이건 숙달이 안되서 그런것 같다.
더 풀어봐야겠다.
'코테공부' 카테고리의 다른 글
프로그래머스 50일차 - 섬 연결하기 (0) | 2023.04.07 |
---|---|
프로그래머스 49일차 - 이름에 el이 들어가는 동물 찾기 (0) | 2023.04.06 |
프로그래머스 49일차 - 큰 수 만들기 (0) | 2023.04.06 |
프로그래머스 49일차 - 조이스틱 (0) | 2023.04.06 |
프로그래머스 48일차 - 더 맵게 (0) | 2023.04.05 |