1654번 - 랜선 자르기
아래 코드에서 정답을 right로 하면 정답이 뜨고
result로 정답을 제출하면 오답이 뜹니다.
ans==n일 경우중에 가장큰 mid를 result에 넣는 것인데 왜 오답이 뜨나요??
right를 출력할때와 result를 출력할때 차이점을 모르겠습니다. ㅠㅠ
도
와주세요
ans==n이 절대 실행되지 않을 수 있기 때문입니다. 1 차이를 경계로 한 쪽에서는 n보다 작고, 한 쪽에서는 n보다 크게 나올 수 있습니다.
쉽게 말해서 ans가 n-1, n+1만 나오고 n이 안될수 있다는 말씀이신거죠??
그
러면 정답이 없는것 아닌가요?? n개의 랜선을 만드는경우가 정답이니까 ans==n이 없는 경우는 정답이 0아닌가요?
"정확히" n개라고 하지 않았기 때문에, n개를 얻을 수 있다면 되는 것으로 보셔야 합니다. 즉, n+3개를 얻었다면 여기서 3개는 그냥 버리면 되는 거죠.
아.... 문제이해가 안된상태에서 코딩을 하니까 오답이 나는군요
댓글을 작성하려면 로그인해야 합니다.
ashi3914 5년 전
아래 코드에서 정답을 right로 하면 정답이 뜨고
result로 정답을 제출하면 오답이 뜹니다.
ans==n일 경우중에 가장큰 mid를 result에 넣는 것인데 왜 오답이 뜨나요??
right를 출력할때와 result를 출력할때 차이점을 모르겠습니다. ㅠㅠ
도
와주세요