코딩테스트/기본

★ 백준 - 코드 제출 결과 관련 설명

yejin72 2023. 1. 19. 14:22
728x90

틀렸습니다

  • 몇 %에서 틀렸다는 것은 의미가 없습니다. 몇 %에서 틀렸다는 내용을 올리지 마세요.
  • 맞았는데 틀리는 경우는 거의 없습니다. 만약 데이터가 잘못되어서 틀린 경우라면, 오타/오역/요청 게시판으로 글을 올려주세요.
  • 내 컴퓨터에서는 되는데, 제출하면 틀리는 경우도 없습니다. 더 많은 예제를 입력해보세요.
    • Visual Studio에서는 되는데, 이클립스에서는 되는데, 엑스코드에서는 되는데, 실행은 되는데, 제 컴파일러에서는 되는데, gcc에서는 되는데, 등등의 표현도 사용하지 말아주세요.
  • 문제에서 출력하라고 한 내용 이외의 말을 출력 하면 안됩니다. 문제의 출력 형식을 지키는지 다시 한 번 확인해보세요.
  • 예제만 채점하는 것이 아니기 때문에, 예제가 잘 나오는 것도 큰 의미가 없습니다. 질문 게시판에서 해당 문제를 검색하거나, 직접 다른 데이터를 만들어서 테스트해보세요.
  • 더 읽어보면 좋은 글

시간 초과

  • 시간 제한은 테스트 파일 하나 당 독립적으로 측정됩니다.
  • 언어별로 추가 시간이 주어질 수 있으며, 이 내용은 언어 도움말에서 확인할 수 있습니다.
  • 문제마다 언어별 추가 시간이 없는 경우가 있을 수도 있습니다.
  • 입/출력하는데 시간이 오래 걸릴 수 있습니다. 다음 링크를 확인해보세요. (입력 속도 비교/출력 속도 비교)
  • 언어에서 제공하는 함수 또는 문법의 시간 복잡도도 계산에 포함시켜야 합니다.
    • C에서 strlen의 시간 복잡도는 O(N) 입니다.
    • C++ STL에서 find 함수의 시간 복잡도는 O(N) 입니다.
    • Python에서 x in [1, 2, 3]과 같이, list에서 사용하는 in 연산의 시간 복잡도는 O(N) 입니다.

컴파일 에러

  • 채점 현황/맞은 사람 페이지의 "컴파일 에러" 링크를 클릭하면, 컴파일 에러 이유를 볼 수 있습니다.
  • 언어 도움말에 적혀있는 컴파일러로 시도해보세요.

런타임 에러

  • 런타임 에러는 프로그램이 올바르게 종료되지 않았을 때 발생합니다.
  • 주로 배열의 크기를 잘못 설정한 경우, 함수 호출이 끝나지 않는 경우에 발생합니다.
  • C, C++ 이외의 언어는 입력 파일의 형식이 문제에 나와있는 형식과 다른 경우에도 발생할 수 있습니다. 이 때는, 오타/오역/요청 게시판으로 글을 올려주세요.
  • 런타임 에러 이유는 보여주지 않습니다.
  • stderr (Standard error stream)에 출력을 하면 런타임 에러를 받게 됩니다.
  • 프로그램이 수행하다가 Exception이 발생하면 런타임 에러를 받게 됩니다. (별다른 에러 처리를 하지 않으면 에러 메시지가 stderr에 출력되기 때문)

출력 초과

  • 틀렸습니다와 동일합니다.
  • 정답 파일보다 너무 많은 출력을 해서 중간에 실행을 종료시킨 경우에 해당됩니다.

출력 형식이 잘못되었습니다

  • 문제에 나와있는 출력 형식을 지키지 않은 경우입니다.
    • 두 정수를 공백 하나로 구분해 출력하라고 했을 때, 이를 공백 두 개로 구분했을 때
    • 두 정수를 한 줄에 하나씩 공백으로 구분해 출력하라고 했을 때, 이를 두 줄에 나눠서 출력할 때
    • 각 줄의 앞에 의미 없는 공백이 있을 때

메모리 초과

  • 말 그대로 프로그램이 문제에 적혀있는 메모리 제한보다 많은 메모리를 사용했을 때 발생합니다.
  • C/C++과 같은 경우에는 함수를 호출 할 때, 함수 내에서 수정하지 않는 변수를 call-by-value로 호출했는지 확인해보세요.

스페셜 저지

  • 스페셜 저지는 정답을 검증하는 프로그램을 통해서 정답 여부를 검사할 때 사용합니다.
  • 하나의 문제에서 여러 개의 정답이 있는 경우, 실수 오차를 검사해야 하는 경우에 사용합니다.
  • 이를 사용하는 문제는 스페셜 저지가 문제에 표시되어 있습니다.

기타

  • 소스 A와 B에서 다른 부분이 없는데, 다른 결과를 받게 됩니다.
    • 물론 채점 프로그램의 버그일 수도 있지만, 아닐 수도 있습니다.
    • 두 소스를 비교했을 때, 다른 부분이 존재하는 경우가 채점 프로그램의 버그인 경우보다 훨씬 많았습니다.

 

 

- 출처

https://www.acmicpc.net/board/view/23037

 

글 읽기 - 질문 게시판 공지사항

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

www.acmicpc.net

 

728x90

'코딩테스트 > 기본' 카테고리의 다른 글

여러 런타임 에러 발생 이유  (0) 2022.11.17