📌 문제 링크: https://www.acmicpc.net/problem/1449
✅ 내 풀이(Success) :
🧐 Review:
물이 새는 곳의 위치가 정렬되어 있지 않으므로 데이터를 입력받고 바로 오름차순 정렬을 해주었다. 그다음으로 리스트의 첫 번째 위치를 테이핑의 시작점으로 두고 다음 위치와의 거리 차이를 계산한다. 거리 차이가 테이프의 길이인 L보다 작으면 테이프로 충분히 커버할 수 있지만, 차이가 L보다 크면 당연히 커버할 수 없고, 차이가 같더라도 좌우 0.5씩 간격이 필요하기 때문에 크기가 길이가 L인 테이프로는 커버할 수 없다. 이렇게 커버할 수 없는 경우가 생길 때마다 필요한 테이프의 개수가 하나씩 늘어나고, 테이핑을 시작하는 위치를 다시 설정해준다.
for 반복문이 끝나고 테이프의 최소 개수인 1을 더해주었다. 막상 문제를 풀고나니 초기값을 0이 아닌 1로 설정해주는 것이 좀 더 깔끔한 느낌을 주는 코드라는 생각이 든다.
'알고리즘 문제 풀이: 파이썬 > BOJ' 카테고리의 다른 글
[BOJ_17176] 암호해독기 (0) | 2022.12.28 |
---|---|
[BOJ_5648] 역원소 정렬 (0) | 2022.12.19 |
[BOJ_12891] DNA 비밀번호 (0) | 2022.11.24 |
[BOJ_1926] 그림 (0) | 2022.11.10 |
[BOJ_11501] 주식 (0) | 2022.11.09 |
댓글