baek_su   5년 전

bfs와

visited[화면에 있는 글자수 ][클립보드] 방문배열을 이용해서 문제를 풀었습니다.

붙여넣기 부분을 구현할때

큐에 넣어주기전에 방문한적이 있는지와 없는지를 체크하고

그리고

 새 화면에 있는 글자수 <= 1000 을 추가해야지 런타임 에러가 안나는데 

 1010을 넣으면 또 런타임 에러가 뜨네요...

저부분이 어떻게 동작하는지 이해가 잘 안갑니다.. 

djm03178   5년 전

n_monitor <= x에서 x 값이 무엇이든, 이 부분을 검사하기 전에 먼저 visited[n_monitor][n_clip] == 0를 검사하기 때문에, 이 순간의 n_monitor가 2002 이상이라면 배열의 인덱스를 벗어난 접근이 됩니다. <= 1000으로 했을 때 에러가 나지 않는 것은 이때 나올 수 있는 n_monitor의 최댓값이 2000이기 때문이고, 1010으로 하면 2020까지 올라갈 수 있기 때문에 문제가 됩니다.

baek_su   5년 전

감사합니다. ㅠㅠ

댓글을 작성하려면 로그인해야 합니다.