2579번 - 계단 오르기
런타임 에러 (IndexError)가 나서 다른 분들 코드 보니까
s = list(int(input()) for _ in range(n))dp = [0 for _ in range(n)]
이부분이 다릅니다. 어느분은
s = [0 for i in range(301)]dp = [0 for i in range(301)]for i in range(n): s[i] = int(input())
이렇게 하기도 하는데
제가 궁금한거 결과론적으로 s 리스트와 dp 리스트는 동일한데 왜 제코드는 인덱스 에러가 뜰까요??
또한 정답코드에서
s = [0 for i in range(301)]dp = [0 for i in range(301)] 이부분을
s = [0 for i in range(n+1)]dp = [0 for i in range(n+1)]
이렇게 바꿔도 인덱스 에러가 납니다 제가 놓친 부분이 어딜까요..?
자문자답인데
n=1일 경우 위코드에서는 에러가 나게 되고
밑 코드는 n값과 상관없이 range(301) 했기때문에 그 값이 존재합니다.
댓글을 작성하려면 로그인해야 합니다.
mick98 2년 전
런타임 에러 (IndexError)가 나서 다른 분들 코드 보니까
s = list(int(input()) for _ in range(n))
dp = [0 for _ in range(n)]
이부분이 다릅니다. 어느분은
s = [0 for i in range(301)]
dp = [0 for i in range(301)]
for i in range(n):
s[i] = int(input())
이렇게 하기도 하는데
제가 궁금한거 결과론적으로 s 리스트와 dp 리스트는 동일한데 왜 제코드는 인덱스 에러가 뜰까요??
또한 정답코드에서
s = [0 for i in range(301)]
dp = [0 for i in range(301)] 이부분을
s = [0 for i in range(n+1)]
dp = [0 for i in range(n+1)]
이렇게 바꿔도 인덱스 에러가 납니다 제가 놓친 부분이 어딜까요..?