채점 결과 안내
제출한 코드의 채점 결과가 무엇을 뜻하는지, 결과별로 무엇을 확인하면 좋은지 정리했어요.
모든 테스트 케이스에서 정답과 같은 결과를 출력했어요.
어떤 테스트 케이스에서 정답과 다른 결과를 출력했어요. 앞쪽 테스트 케이스 일부를 통과했다면 통과한 비율만큼 부분 점수로 표시돼요.
확인할 것
• 출력 형식이 문제와 다른지 확인하세요. "답: 3"처럼 형식에 없는 문장을 출력하면 틀려요.
• 가장 작은 입력, 가장 큰 입력, 0이나 음수처럼 예외적인 입력을 직접 넣어 보세요.
• 계산 결과가 int 범위를 넘지 않는지 확인하세요. 필요하면 long long(C/C++), long(Java)을 쓰세요.
• 여러 테스트 케이스를 처리하는 문제라면 변수를 매번 초기화했는지 확인하세요.
어떤 테스트 케이스에서 프로그램이 시간 제한 안에 끝나지 않았어요.
확인할 것
• 입력 크기가 가장 클 때의 시간 복잡도를 계산해 보세요. 더 효율적인 알고리즘이 필요할 수 있어요.
• 입력과 출력이 많은 문제라면 빠른 입출력을 사용하세요.
• 반복문의 종료 조건이 잘못되어 무한 반복에 빠지지 않는지 확인하세요.
• 입력을 기다리며 멈춰 있지 않은지 확인하세요. 문제에 없는 입력을 받으려고 하면 시간 초과가 날 수 있어요.
어떤 테스트 케이스에서 프로그램이 메모리 제한보다 많은 메모리를 사용했어요.
확인할 것
• 배열 크기를 필요 이상으로 크게 잡지 않았는지 확인하세요.
• 재귀 호출이 너무 깊어지지 않는지 확인하세요.
• 사용하는 언어에 따라 메모리 제한이 다르게 적용될 수 있어요. 채점 및 실행 환경을 확인하세요.
프로그램이 너무 많은 내용을 출력했어요.
확인할 것
• 반복문 안에서 출력이 끝없이 반복되지 않는지 확인하세요.
• 디버깅용으로 넣은 출력을 지웠는지 확인하세요.
코드를 컴파일하지 못했어요. 채점 결과 화면의 경고 메시지에서 원인을 확인할 수 있어요.
확인할 것
• 제출 언어(채점 환경)가 작성한 코드의 언어와 같은지 확인하세요.
• C++17 문법을 C++11 환경으로 제출하는 것처럼, 채점 환경의 버전이 코드와 맞는지 확인하세요.
• Java는 클래스 이름이 Main이어야 해요.
프로그램이 실행 중에 비정상적으로 종료됐어요. 오류 내용이 채점 결과 화면의 경고 메시지로 표시될 수 있어요.
확인할 것
• 배열의 범위를 벗어난 위치에 접근하지 않는지 확인하세요.
• 0으로 나누지 않는지 확인하세요.
• Python이나 Java에서 처리하지 않은 예외가 발생하지 않는지 확인하세요.
채점을 기다리거나 채점하고 있어요. 채점이 진행되는 동안 통과한 테스트 케이스의 비율이 함께 표시돼요.
확인할 것
• 제출이 몰리면 채점이 늦어질 수 있어요. 잠시 기다리면 결과가 표시돼요.
테스트 케이스별 결과에서 볼 수 있어요. 앞선 테스트 케이스가 틀려서 이 테스트 케이스는 채점하지 않았어요.
확인할 것
• 먼저 실패한 테스트 케이스의 결과를 확인하세요.
채점 서버에서 오류가 발생해 채점을 마치지 못했어요.
확인할 것
• 잠시 후 다시 제출해 보세요.