yjh1440   3년 전

다른분들 답안지를 보면 제 방식이 완전 엇나간게 아닌가 싶기도 합니다만...

일단은 이런 방식으로 풀었을때, 시간초과가 나는 이유에 대해서 알고싶습니다.

dldyddlwl   3년 전

이중 루프를 돌게 되어서 그렇습니다! 이 문제는 루프 하나로도 충분히 해결할 수 있습니다.

글쓴이님의 방식은, 루프를 돌면서, 한 원소에 대해서(a[j]), 다시 루프를 돌려서(a[k]) 대소비교를 통해 max나 min이 n-1이 되면 답을 얻어내려고 하는 방법입니다.

이 방법의 문제는, 최소 최대가 겹치는 경우입니다. 예를 들어, 1 1 1 1 1이면 글쓴이님 코드는 제대로 작동하지 못합니다. 그래서 등호를 <= 붙여주셔야 합니다.

yjh1440   3년 전

<= 등호를 붙혀봤는데도 오답이네요 ㅜㅜ

dldyddlwl   3년 전

시간초과가 아니라 오답이 나오세요?

yjh1440   3년 전

죄송합니다. 오답이 아니고 '시간초과'가 또 뜹니다. 

dldyddlwl   3년 전

어쩔 수가 없습니다. 단일루프로 해결하셔야 합니다!

yjh1440   3년 전

알겠습니다 ㅎㅎ 답변감사드립니다!

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