9625번 - BABBA
A,B갯수를 2차원 배열로 저장해서,
DP[i][0] = A의 갯수
DP[i][1] = B의 갯수
로 나눠서 세어주려고 했는데,
K=4일떄, (2,4)의 값이 나옵니다..
K =3 일 때, DP[2] = [1,2] 라는 뜬금없는 값이 나옵니다.
분명, DP[2] =[1,1] 이어야 하는데 말이죠.
K=2 일때, DP[2] = [1,1] 정상적으로 나옵니다.
왜 K=3 일때, 갑자기 DP[2]의 값이 변동할까요?
4번째 줄에서 DP배열 선언이 잘못되었습니다. 얕은 복사가 일어납니다.
DP = [[0, 0] for _ in range(k+1)] 와 같이 선언해주셔야합니다.
앗..선언 방식에 따라서, 얕은복사와 깊은 복사가 달라지는 군요.. 한번 찾아봐야겠습니다. 감사합니다
댓글을 작성하려면 로그인해야 합니다.
wnsrl4067 2년 전
A,B갯수를 2차원 배열로 저장해서,
DP[i][0] = A의 갯수
DP[i][1] = B의 갯수
로 나눠서 세어주려고 했는데,
K=4일떄, (2,4)의 값이 나옵니다..
K =3 일 때, DP[2] = [1,2] 라는 뜬금없는 값이 나옵니다.
분명, DP[2] =[1,1] 이어야 하는데 말이죠.
K=2 일때, DP[2] = [1,1] 정상적으로 나옵니다.
왜 K=3 일때, 갑자기 DP[2]의 값이 변동할까요?