bsy3719   4년 전

일단 테스트 케이스는 다 통과하는데 시간 초과가 뜹니다.

인터넷에서 찾은 파이썬 코드와 별차이없는데 왜 시간초과가 뜨는건지 궁금합니다.

ldh5730   4년 전

from collections import deque 

next_pos = deque()

x,y = next_pos.popleft()

list.pop(0)은 시간복잡도가 O(N)입니다. 시간복잡도가 O(1)인 deque.popleft()를 사용하세요

이외에도 python으로 문제 풀 때 중요한 부분을 살펴보시길 바랍니다.

https://www.acmicpc.net/blog/view/70


bsy3719   4년 전

감사합니다 ㅠㅠ list.pop이 O(n)인줄은 정말 몰랐네요 

bsy3719   4년 전

궁금한게 있는데 sys로 input 받는거랑 input()으로 받는거랑 차이가 있나요??

ldh5730   4년 전

sys.stdin.readline()과 input()차이를 말씀하시는 건가요?

sys.stdin.readline()이 속도가 더 빨라서, input()대신 사용하고 있습니다. 백준 문제 풀때도 input()으로 풀면 시간초과가 나온다는 경우를 본 것 같은데, 어디서 찾을 수 있는지 모르겠네요

그리고 sys.stdin.readline()은 받으면 끝에 \n이 붙어있고 input()은 없는 걸로 알고 있습니다.

bsy3719   4년 전

친절한 답변감사합니다.

많이배워가요 ㅠㅠ

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