728x90
테이프를 붙일 때 시작 지점에서 0.5 왼쪽에서 시작해서 테이프의 길이 안에 그다음 새는 곳이 포함되어 있다면 count를 올리지 않고 , 만약 포함되어 있지 않다면 새롭게 테이프의 시작 지점을 지정해 준 뒤 count의 합을 구하면 되는 문제이다.
import sys
input = sys.stdin.readline
N, L = map(int,input().split())
arr = list(map(int,input().split()))
arr.sort() #오름차순으로 정렬한다.
tape = 1
start = arr[0]
end = start + L - 0.5 #테이프의 시작이 start보다 0.5작아야 한다
for i in arr:
if end >= i:
continue
else:
tape += 1
end = i + L - 0.5
print(tape)
'Algorithm' 카테고리의 다른 글
백준 알고리즘 파이썬(Python) 9012번 괄호 (0) | 2021.07.22 |
---|---|
백준 알고리즘 파이썬(Python) 5397번 키로거 (0) | 2021.07.19 |
백준 알고리즘 파이썬(Python) 16162번 가희와 3단 고음 (0) | 2021.06.12 |
백준 알고리즘 파이썬(Python) 13413번 오셀로 재배치 (0) | 2021.06.08 |
백준 알고리즘 파이썬(Python) 19941번 햄버거분배 (0) | 2021.06.03 |