soojinyi98   3년 전

a b c d e f 를 비교한다고 했을 때

a-f 가 초기값,

 a-e, b-f, 둘 다 아니면 b-e  순서대로 최솟값이 바뀌고,

셋 다 아니면

a-f 를 출력하는 식으로 만들어보았는데 틀렸다고 나오네요.

반례를 못 찾겠습니다ㅠㅠ

mickeyjung   3년 전

6

-7 -4 -1 1 2 6

일때 1이 출력 되네요

이게 반례인것 같습니다.

----------------------------------

제가 한번 다시 짜봤는데요

초기값으로 s를 0 e를 n-1로 설정하고

만약에 a[s]+a[e]가 0보다 크면 e를 감소시키고

아니면 s를 증가시킵니다.

ans에는 a[s]+a[e]의 최솟값을 저장하면 되겠죠?

그러다가 s와 e가 같아지면 while문을 종료하게 됩니다.

soojinyi98   3년 전

감사합니다! 큰 도움이 되었습니다.

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