40번째 줄 dfs(start, i, visit | (1 << i)) + w[idx, i] 에서 INF에 양수값을 더하는 경우가 생기는것같아요.
INF가 int max이면 양수값을 더할때 overflow 해서 음수가 되는거 아닐까요
2098번 - 외판원 순회
40번째 줄 dfs(start, i, visit | (1 << i)) + w[idx, i] 에서 INF에 양수값을 더하는 경우가 생기는것같아요.
INF가 int max이면 양수값을 더할때 overflow 해서 음수가 되는거 아닐까요
댓글을 작성하려면 로그인해야 합니다.
powerlsj7 1년 전 1
최소값을 구할려고 해서 int.MaxValue 로 int 최대값을 넣었습니다.
static int INF = int.MaxValue - 1000;
이부분 틀려서 -1000하니까 질문게시판의 반례가 통과하네요.
하지만 채점하면 틀리고
INF를 INF=987654321;
이값으로 하니까 채점이 통과합니다.
디버깅으로 값을 확인하면 -int최대값으로 나오는데 c#만 이런건가요? c++에서는 이런경우 없어서요 ㅠㅠ
만약 c#만 그렇다면 정말 쓰레기 언어같아용 ㅠㅠ