minqw5   1년 전

가장 큰 값과 작은 값 출력하는 파이썬3 코드입니다.

안되는 예외 테스트 케이스가 있을까요?

왜 틀렸는지 알려주세요~

ainch96   1년 전

모두 양수나, 모두 음수가 들어오는 경우가 존재 합니다. 

minqw5   1년 전

5

4 6 7 1 3

또는

5

-55 -21 -4 -3 -1

이런 경우 말씀 하시는 건가요?


doju   1년 전

전혀 성립하지 않는 풀이입니다.

minqw5   1년 전

아하..

일일이 -1하고 1     또는   -1하고 2     이렇게 빼보면서 절대값 가장 작은거 찾아낼 수밖에 없는건가요?

그리고 이진탐색은 이문제와 연관이 있나요?

그러다보면 시간초과 날것 같기도해서요..

doju   1년 전

연관이 있습니다. 예를 들어 값이 -5인 용액을 선택했다고 하면 두 번째 용액은 최대한 5에 가까운 것을 선택하는 것이 좋고, 이 선택을 이분탐색으로 효율적으로 할 수 있습니다.

물론 이분탐색을 사용하기 위해서는 배열이 정렬되어 있어야 합니다.

ainch96   1년 전

제가 하고 싶었던 말은

5

1 2 3 4 5 

같이 모두 양수이면, 가장 작은 1,2 를 구해야 하는데, 1, 5를 구해서 틀린다는 말이었습니다. 

그리고 이진 탐색을 사용하기 위한 정렬, 그리고 이진 탐색 자체를 사용 하는데 걸리는 시간 복잡도를 합해도 

O ( n * log n ) 인데

n이 10^5 라서 시간초과 안납니다. 

minqw5   1년 전

일단 두 분 모두 감사드립니다.  정렬은 파이썬3에서 제공하는 함수 사용후 이진탐색 부터 해보겠습니다


minqw5   1년 전

5

1 2 3 4 5

일경우는 어떤 방식으로 1,2를 뽑아내야 하나요??     이런 인풋케이스는 어떻게 처리를 해야할지 잘 모르겠습니다...

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