코드업에서 내 컴퓨터에서는 잘 되던 코드가 컴파일 에러나 실행 중 에러를 받는 일이 많습니다. 대부분 채점 규칙 때문입니다. 아래에서 입출력 규칙, 컴파일 에러가 나는 이유, 언어별 추가 시간, 채점 결과의 뜻을 정리했습니다.
코드업에서 내 컴퓨터에서는 잘 되던 코드가 컴파일 에러나 실행 중 에러를 받는 일이 많습니다. 대부분 채점 규칙 때문입니다. 아래에서 입출력 규칙, 컴파일 에러가 나는 이유, 언어별 추가 시간, 채점 결과의 뜻을 정리했습니다.
코드업 입출력 규칙
코드업은 입력을 표준입력으로 받고 결과를 표준출력으로 내야 채점됩니다. C는 scanf와 printf, C++은 cin과 cout을 쓰고, fscanf와 fprintf는 쓸 수 없습니다. 프로그램이 파일을 읽거나 쓰면 금지 동작으로 보고 실행 중 에러가 납니다. 문제 화면의 코드를 복사해 붙여넣으면 제대로 안 될 수 있으니 직접 입력하라는 주의 문구도 문제마다 붙어 있습니다.
코드업 컴파일 에러 나는 이유
내 컴퓨터에서 되던 코드가 코드업에서 컴파일 에러가 나는 대표적인 경우입니다.
| 원인 | 설명 |
|---|---|
| void main | G++은 int main 필수, 컴파일 에러 |
| for 안 변수 | 블록을 벗어나면 사라짐 |
| itoa | 표준 함수 아님 |
| __int64 | 표준 아님, long long 사용 |
| 에러 메시지 | 채점 결과를 누르면 확인 |
| 경고 | 에러로 보지 않음 |
코드업 언어별 채점 시간
코드업은 Java로 내면 채점 때 2초와 메모리 512M가 더해지고, Python3와 PyPy3로 내면 2초가 더해집니다. 1001번과 6001번 문제는 시간 제한 1초, 메모리 128MB로 표시돼 있습니다. 채점 서버를 다른 용도로도 쓰기 때문에 순간적으로 느려질 수 있다고 FAQ에 적혀 있습니다.
코드업 채점 결과 뜻
코드업 채점 결과 중 헷갈리는 것은 표현 에러입니다. 답은 맞지만 공백이나 빈 줄 때문에 출력이 다를 때 나옵니다. 출력한계 초과는 출력이 1MB를 넘은 경우로 대개 무한 루프입니다. 대기 중은 채점이 밀린 상태로 보통 1분 안에 끝납니다. 정답이 여러 개인 스페셜 저지 문제는 잘못된 풀이 정보를 보여 주지 않습니다.
코드업은 정보컴퓨터 교사들이 만든 입문자용 온라인 저지로, C언어 기초 100제는 1001번, 파이썬 기초 100제는 6001번부터 시작합니다. 채점은 표준입출력만 쓰고 파일을 다루면 실행 중 에러가 나며, G++에서 void main을 쓰면 컴파일 에러가 납니다. Java는 2초와 메모리 512M가, Python과 PyPy는 2초가 채점 시간에 더해집니다. 표현 에러는 공백이나 빈 줄 차이이고, 모범 소스는 문제를 풀어야 보이며 주로 2000번 이하 문제에 있습니다. 회원가입 때 이메일을 넣지 않으면 비밀번호 찾기를 쓸 수 없고, 교사 권한은 서버 포화로 지금 새로 발급하지 않습니다.