hello70825   5년 전

  1. 다익스트라 함수 하나로 구현
  2. 여우와 늑대 다익스트라 함수 따로따로 나눠서 구현
  3. 2 코드에서 늑대 상태 변화를 따로 나눠서 구현(2코드는 상태 변화를 수식으로 만들었음, 3코드는 수식이 아닌 if,else if 문으로 만들었음)
  4. 2 코드에서 우선 순위 큐를 deque로 바꿔서 도전
  5. 함수 호출 시간 때문에 시간 초과가 걸릴 수도 있을 것 같아서 함수를 따로 만들지 않고 main에 전부 구현
  6. 5 + 상태 변화 계산하는 것 때문에 시간 초과가 걸릴 수도 있을 것 같아서, 처음 값을 입력 받을 때 1/2배, 2배로 전부 리스트에 넣어줌
  7. 여우는 SPFA, 늑대는 다익스트라
  8. 둘 다 SPFA를 이용

그동안 제출한 코드 내용 입니다. 전부 시간 초과가 나옵니다.

너무 고통스럽습니다 살려주세요

jh05013   5년 전

작년 대회 중에는 언어 별 추가 시간이 없는 대회가 많았는데, 이것도 그 중 하나입니다. 그런 경우는 대부분 파이썬 계열의 언어로 통과가 가능함을 보장하지 않습니다. 전 어떻게 풀었나 봤더니 C++이네요 (...)

오늘 밤에 파이파이로 풀어볼 계획인데, 통과될 것이라고 확신이 서진 않습니다.

hello70825   5년 전

혹시 통과된다면 시간 나실 때 어떻게 풀었는지 알려주세요 ㅠㅠ

jh05013   5년 전

844 ms로 통과했습니다. 가능은 하지만 빠르게 돌아가도록 짜지 않으면 시간 초과가 날 것으로 보입니다. 달빛 여우와 달빛 늑대 각각에 대해 그래프를 하나씩 만들고, 두 그래프 각각에 대해 다익스트라 함수를 호출했습니다.

hello70825   5년 전

저는 어디서 시간을 단축을 해야 할지 도저히 모르겠습니다.

그동안 제출한 코드들이 제 나름대로 최대한 효율적으로 만들어서 제출한 것인데 어디를 고쳐야 할지 모르겠네요 ㅠ

그래도 @jh05013님 덕분에 파이썬으로 풀 수 있다는 희망이 보였습니다.

다음에 다시 도전해봐야겠네요. 감사합니다.

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