기록하고 까먹지 말기

1449 본문

전공/백준

1449

yha97 2022. 10. 27. 20:56

날짜 : 2022. 10. 27

사용 언어 : python

 

문제

 

코드

import sys

n, l = map(int, sys.stdin.readline().split()) # 구멍 갯수, 테이프 길이
spot = list(map(int, sys.stdin.readline().split())) # 구멍 위치
hole = [True] * (1002)
cnt = 0

for i in spot:
    hole[i] = False
    
i = 0
while i < 1002:
    if hole[i] == False: # 구멍 발견
        cnt += 1
        for j in range(l):
            if i+j in range(1002):
            	hole[i + j] = True # 구멍 메꾸기
    i += 1
print(cnt)

 

 

알게된 점

- 구멍이 뚫리면 False, 정상은 True로 설정해 이중 for문으로 풀이하는 문제였다.

- 말이 이중 for문이지 실제론 최대 1002 * 1000이기 때문에 약 100만의 연산횟수라서 시간은 넉넉했다.

- 구멍 뚫린 위치에서 좌우 0.5의 추가간격을 지정한다는 조건에 대해서 잘못 이해해 1단위로 하는 바람에 확실한 방향을 잡는데 어려움이 있었다.

- 방향을 잡고 문제를 해결하는데 큰 어려움은 없었다.

 

 

참고 사이트

 

'전공 > 백준' 카테고리의 다른 글

24416  (0) 2022.10.29
10845  (0) 2022.10.28
2667  (0) 2022.10.26
1744  (0) 2022.10.26
2178  (0) 2022.10.25