SOJ ONLINE JUDGE

컴파일 및 실행 환경

지원 언어와 제한

현재 제출에 사용하는 버전, 컴파일 명령과 제한 보정입니다. 문제에 적힌 시간·메모리는 기본 제한이며 언어별 보정은 채점할 때 적용됩니다. 로컬과 버전·컴파일 옵션이 다르면 결과가 달라질 수 있습니다. 넓은 표는 좌우로 스크롤하세요.

언어별 버전, 컴파일 명령, 추가 시간과 메모리 제한
언어버전컴파일시간 제한메모리 제한
C17 gcc 15.2.0 gcc -std=c17 -O2 -pipe -DONLINE_JUDGE Main.c -o Main -lm 추가 시간 없음 추가 메모리 없음
C++17 g++ 15.2.0 g++ -std=c++17 -O2 -pipe -lm -DONLINE_JUDGE Main.cpp -o Main 추가 시간 없음 추가 메모리 없음
C++20 g++ 15.2.0 g++ -std=c++20 -O2 -pipe -lm -DONLINE_JUDGE Main.cpp -o Main 추가 시간 없음 추가 메모리 없음
C++23 g++ 15.2.0 g++ -std=c++23 -O2 -pipe -lm -DONLINE_JUDGE Main.cpp -o Main 추가 시간 없음 추가 메모리 없음
Java 21 OpenJDK 21.0.12.1 javac -encoding UTF-8 Main.java 기본 시간 × 2 + 500ms 기본 메모리 + 256MB
Python 3 Python 3.14.4 python3 -m py_compile Main.py 기본 시간 × 3 + 1000ms 기본 메모리 + 256MB
Rust 2021 rustc 1.93.1 rustc --edition=2021 -O Main.rs -o Main 기본 시간 × 1.5 + 500ms 기본 메모리 + 64MB
JavaScript Node.js 24.21.0 node --check Main.js 기본 시간 × 2 + 500ms 기본 메모리 + 256MB

시간·메모리 제한 계산

시간·메모리 모두 기본 제한에 언어 배수를 곱해 올림한 뒤 추가량을 더합니다.

예를 들어 기본 시간이 1,000ms이고 언어 설정이 기본 시간 × 2 + 500ms라면 실제 시간 제한은 2,500ms입니다. 기본 메모리가 512MB이고 기본 메모리 × 1.5 + 256MB라면 실제 메모리 제한은 1,024MB입니다.

표에 추가 시간 없음 또는 추가 메모리 없음이라고 표시되면 해당 제한은 문제의 기본값을 그대로 사용합니다.

컴파일과 실행

서버가 선택한 언어의 명령을 자동으로 적용하므로 코드만 제출하면 됩니다. 프로그램은 문제 형식대로 표준 입력을 읽고 표준 출력으로 답을 내야 합니다. 로컬 파일이나 개인 환경 값에 의존하지 마세요.

환경 차이로 결과가 달라질 때

  • CE: 선택한 언어와 현재 버전·컴파일 명령에서 지원하지 않는 문법, 옵션, 확장 기능을 썼는지 확인하세요.
  • TLE·MLE: 보정된 실제 제한과 알고리즘 복잡도, 자료구조 크기를 비교하세요.
  • 결과가 다를 때: 표준 입출력, 디버그 출력, 로컬 파일 의존 여부를 확인하세요. 환경은 변경될 수 있으므로 예전에 확인한 버전이 아니라 현재 표를 기준으로 비교합니다.