1520번 - 내리막 길
이 소스의 34번째줄의
if (~dp[x][y])
return dp[x][y];
여기서 ~dp[x][y] 이부분을 예를들어 dp[x][y] ==0 이라든지 !dp[x][y]로 하면
7%에서 더이상 진행되지않고 시간초과가 뜹니다.
방문한 지점일경우에 반환해서 시간을 줄여주는 코드이기에 방문지점은 dp값이 0일줄예상하고 코드를 짯는데
꼭 저렇게 비트연산자~ 를 써야만 통과가되는 이유가 정말 궁금합니다 ㅠ
자문자답입니다. dp값이 -1인 경우, 즉, 한번도 방문안한지점의경우 0으로 초기화하기위해 추가한 코드였네요.
아직 문제에대한 이해가 부족한가봅니다.
댓글을 작성하려면 로그인해야 합니다.
apdh25 4년 전
이 소스의 34번째줄의
if (~dp[x][y])
return dp[x][y];
여기서 ~dp[x][y] 이부분을 예를들어 dp[x][y] ==0 이라든지 !dp[x][y]로 하면
7%에서 더이상 진행되지않고 시간초과가 뜹니다.
방문한 지점일경우에 반환해서 시간을 줄여주는 코드이기에 방문지점은 dp값이 0일줄예상하고 코드를 짯는데
꼭 저렇게 비트연산자~ 를 써야만 통과가되는 이유가 정말 궁금합니다 ㅠ