사용자 도구

사이트 도구


ps:python_코드_수행시간

파이썬 코드 수행시간

타입 어노테이션

  • 타입 어노테이션을 위해서 typing이나 collections.abc 모듈을 import하는 것은 로딩시간에 꽤 영향을 준다.
  • collection.abc는 30ms, typing은 130ms 정도의 추가 시간이 걸린다.
어노테이션 메모리 시간 코드
- 30616 36 코드
from typing import TypeVar; _T = TypeVar('_T') 38864 160 코드
from typing import Optional; _O = Optional[int] 38864 168 코드
_O = int | None 30616 64 코드
from collections.abc import Iterable; _I = Iterable[int] 34076 72 코드

입출력

  • 적은 양의 입력을 받을때, input() 대신 sys.stdin.readline() 를 사용한다고 속도가 더 느려지는것은 아니다 (import sys 자체는 오버헤드가 없다)
인풋 메모리 시간 코드
input() 30616 36 코드
import sys; sys.stdin.readline() 30616 36 코드

라이브러리

PrimeFactorizationCalculator

  • Least Prime Factor 테이블을 계산하는 방법에 따른 시간 차이.
    • 상수 최적화 여지는 좀더 남아있음
  • 테스트 문제는 어려운 소인수분해로 테스트 (N=5,000,000)
방법 시간 코드
에라토스테네스, 2의 배수만 미리계산 4176 코드
에라토스테네스, 11이하 소수 미리계산 4192 코드
리니어 시브, 2의 배수만 미리계산 3980 코드
리니어 시브, 11이하 소수 미리계산 3760 코드

토론

댓글을 입력하세요:
I I E V Q
 
ps/python_코드_수행시간.txt · 마지막으로 수정됨: 2022/12/13 03:05 저자 teferi