qkreltms   6년 전


2%에서 넘어가질 않습니다.
시간초과가 나오는데 도데체 어디서 그렇게 오래걸리는지 모르겠네요...
1. 오름차순이 아니면 뒤집는다 -> 오름차순으로 만듬
2. 1 2 3 4 5 ->  5 1 2 3 4 -> 4 5 1 2 3 n만큼 돌면서 이런식으로 b배열의 자리를 바꾸면서 a배열과 배열 배치가 같은지 찾는다. 
3. 중간에 배열 배치가 같으면 바로 출력하고 종료
4. n번을 다 돌았는데도 불구하고 찾지 못 한다면 bad puzzle 출력

jh05013   6년 전

a = a[::-1], a == b, b.insert(0, x) 모두 O(N)의 시간이 걸립니다.

qkreltms   6년 전

기껏 해봐야

O(N^2)정도 나오는데 이렇게 느린가요?

jh05013   6년 전

C++과 Pypy (더 빠르게 돌아가는 파이썬) 기준 O(N^2)로는 N <= 10000 근처가 한계입니다.

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