반응형
문제 출처: www.acmicpc.net/problem/1449
1 . 문제 접근 방식
- 그리디 알고리즘을 떠올리면서 처음부터 탐색해 나아가며 시작점을 초기화 하는 방법을 이용하였다.
2 . 내가 푼 코드
import sys
N, L = map(int, sys.stdin.readline().split())
# 물이 새는 곳을 list형식으로 받고 오름차순 정렬
leak = sorted(list(map(int, sys.stdin.readline().split())))
# 첫 시작 점과 총 count수를 0으로 초기화
start = 0
total = 0
# start 지점을 계속해서 재할당 하는 방식을 이용하였다.
# 물이 샌 지점에서 테이프의 길이를 더하면 새로운 지점으로 갱신
# leak 리스트 내의 숫자보다 작을 경우에만 반복문을 돌도록 조건 설정
for i in range(len(leak)):
if start <= leak[i]:
start = leak[i] + L
total += 1
print(total)
3 . 결과 및 느낀점
- 성공! 범위를 잘못 설정해서 값이 이상하게 나오기도 했지만 그리디 알고리즘 문제들을 풀다보니 그래도 조금씩 나아가고 있는 느낌이다.
반응형
'개인 공부 > Algorithm' 카테고리의 다른 글
[Baekjoon/백준] 1026번 Python (0) | 2021.04.06 |
---|---|
[Baekjoon/백준] 11399번 Python (0) | 2021.04.06 |
[Baekjoon/백준] 14405번 Python (0) | 2021.04.06 |
[Baekjoon/백준] 1094번 Python (0) | 2021.04.05 |
[Baekjoon/백준] 2720번 Python (0) | 2021.04.05 |