Logo
(追記) (追記ここまで)

반례 부탁드립니다

1655번 - 가운데를 말해요

이분 탐색으로 값을 삽입하는 방식으로 풀었습니다.

여러 반례들을 넣어보았는데 통과했지만 제출 시 2% 부분에서 틀렸다고 나옵니다.

제출 시에는 stdin을 사용해 입력하는 방식(주석 처리된 부분)으로 바꿔 제출합니다.

반례 드립니다. 반례도 반례이지만, 중간에 insert하는 것은 최대 O(n)이 걸리기 때문에 이 방법은 고쳐도 시간초과가 날 것 같습니다. https://www.acmicpc.net/blog/v... 의 python 부분을 확인해 보세요.

입력:

4
-3
7
6
5

출력:

-3
-3
6
-3

정답 출력:

-3
-3
6
5


24번째 줄을 고치고 제출했는데 예상대로 시간 초과가 떴습니다.

그런데 제가 깜빡하고 input을 stdin형식으로 바꾸는 것을 안해서 다시 고쳐서 제출했더니 468ms로 맞았습니다가 떴습니다

파이썬으로는 heapq으로만 풀 수 있게 시간이 설정되었을 것이라고 생각했는데 의외네요.

혹시 이거 재채점이 필요한 것일까요?

오 상당히 의외군요.. 시간 제한이 상당히 빡빡한데도 n^2이 통과했다는 것은 insert 저격 데이터 (항상 맨 처음에 insert하는 데이터) 가 없거나 pypy에서 insert에 대한 최적화를 해주는 거일수도 있겠네요. 문제 원래 의도를 지킬려면 저격 데이터를 추가하거나 n크기를 늘려야 할 것 같네요..

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

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /