반응형
https://www.acmicpc.net/problem/17281
삼성A형 기출문제였고, 효율성을 고려하면 백준 환경에서 python 3으로는 사실상 풀 수 없는 문제.
1번 타자는 정해져 있고, 나머지 8명의 타자에게 타순을 부여하는 문제이므로
완전탐색이고, 총 탐색해야 할 가짓수는 8!으로 약 4만 개 정도다.
python3 설정으로는 시간초과를 절대 해결할 수 없었고, pypy3을 써도 정말 간신히 통과한다.
정말 어떻게 풀어도 시간초과가 해결이 안 나서, 검색으로 찾은 C++ 코드로 통과한 다음 pypy3 통과자들의 코드를 봤는데,
변수 할당 하나 때문에 91%에서 시간초과가 계속 났던 거였다.
원래는 base를 의미하는 b1, b2, b3도 배열로 선언한 다음 for문으로 체크하도록 코드를 짰었는데,
이 정도로 빡빡한 조건에서는 사치였다.
반응형
'프로그래밍 > 코딩테스트 문제풀이' 카테고리의 다른 글
[Python] 백준 2110. 공유기 설치 (0) | 2020.02.13 |
---|---|
[Python] 프로그래머스. 영어 끝말잇기 (Level 2) (0) | 2020.02.12 |
[Python] 백준 1021. 회전하는 큐 (0) | 2020.02.10 |
[Python] 프로그래머스. 예산 (Level 3) (0) | 2020.02.08 |
[Python] 백준 15997. 승부 예측 (카카오 코드페스티벌 2018) (0) | 2020.02.07 |