kangi96   4년 전

두 코드는 딱 한 줄만 다릅니다.

e -= (dist[cur]-dist[nxt]); // WA

e -= nxt_e; // AC

하지만 int nxt_e=dist[cur]-dist[nxt];이라고 정의했기 때문에 틀려야 할 이유가 없는 것 같은데 무엇이 문제인지 잘 모르겠습니다.

도움주시면 감사하겠습니다.

kangi96   4년 전

혹시 몰라서 e = e-(dist[cur]-dist[nxt]);이렇게도 해봤는데 역시 WA를 받았습니다. 컴파일러 단계의 문제인가요? 이런 경우가 없어서 정말 궁금하네요

crypt9   4년 전

cur=10, nxt=20 이라 가정하면,


// cur 과  nxt 를 계산

int nxt_e=dist[cur]-dist[nxt]; // dist[10] - dist[20]

cur = nxt; // cur = 20

e -= nxt_e; // e -= dist[10]-dist[20]


// nxt 와 nxt 를 계산

int nxt_e=dist[cur]-dist[nxt]; // dist[10] - dist[20]

cur = nxt; // cur = 20

e -= (dist[cur]-dist[nxt]); // e-= dist[20] - dist[20]

kangi96   4년 전

허허...과거의 저는 무지했었군요 오랜만에 다시 보니 부끄럽네요ㅎㅎ답변 감사합니다

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