도움말

검토


C++는 g++ 9.4.0을 사용하여 컴파일되며 명령은 다음과 같습니다.  g++ -fno-asm -Wall -lm --static -O2 -std=c++14 -DONLINE_JUDGE -o Main Main.cc
C는 gcc 9.4.0을 사용하여 컴파일하며 명령은 다음과 같습니다.  gcc Main.c -o Main -fno-asm -Wall -lm --static -O2 -std=c99 -DONLINE_JUDGE
#pragma GCCoptimize("O0")를 사용하여 O2 최적화를 수동으로 끌 수 있습니다.
Pascal은 fpc 3.0.4를 사용하여 컴파일되며 명령은 다음과 같습니다.  fpc Main.pas -oMain -O1 -Co -Cr -Ct -Ci
Java는 OpenJDK 17.0.4를 사용하여 컴파일되며 명령은 다음과 같습니다. javac -J-Xms32m -J-Xmx256m Main.java, 코드에 공개 클래스가 없으면 항목 클래스 이름을 Main으로 지정하세요. , 검토 당시 추가로 2초의 실행 시간과 512MB의 실행 메모리를 제공했습니다.
여기에 제공된 컴파일러 버전은 참조용일 뿐입니다. 실제 컴파일러 버전을 참조하세요.

표준 입력 및 출력을 사용하세요.

Q: cin/cout이 시간 초과(TLE)되는 이유는 무엇입니까?

A: cin/cout은 기본적으로 stdin/stdout을 동기화하고 더 많은 시스템 호출을 생성하여 성능에 영향을 주기 때문에 속도가 느려집니다. 속도를 높이려면 기본 함수 시작 부분에 다음 코드를 추가할 수 있습니다.

ios::sync_with_stdio(false);
cin.tie(0);
* 또한, endl 대신 '\n'을 사용하십시오. endl은 기본적으로 새로 고침 작업을 증가시켜 출력 버퍼 실패를 유발하고 효율성을 저하시키기 때문입니다.

Q: gets 함수가 사라졌나요?

A: gets 함수는 입력 길이를 제한할 수 없기 때문에 역사상 다수의 버퍼 오버플로 취약점이 발생하여 최신 버전에서는 완전히 삭제되었습니다. 대신 fgets 함수를 사용해 주시기 바랍니다. 또는 대신 다음 매크로 정의를 사용하십시오.

#define gets(S) fgets(S,sizeof(S),stdin)

개인정보

본 사이트는 아바타 저장 서비스를 제공하지 않으며, QQ 아바타 디스플레이를 사용합니다. QQ 이메일을 사용하여 등록하시면 시스템이 자동으로 QQ 아바타에 액세스합니다.

반환 결과 설명

시험 문제에 대한 답변이 제출되면 채점 시스템에서 즉시 점수를 평가합니다. 각 제출 결과는 적시에 통보됩니다. 시스템에서 가능한 피드백 정보는 다음과 같습니다.

  • 평가 대기 중: 평가 시스템에서 아직 이 제출물을 평가하지 않았습니다. 잠시 기다려 주십시오.
  • 평가 중: 평가 시스템이 평가 중이며 결과는 나중에 확인할 수 있습니다.
  • 컴파일 오류: 제출한 코드를 컴파일할 수 없습니다. 컴파일러가 출력한 오류 메시지를 보려면 "컴파일 오류"를 클릭하세요.
  • 정답: 축하합니다! 이 질문을 통과하셨습니다
  • 형식 오류: 프로그램에서 출력하는 형식이 요구 사항을 충족하지 않습니다(예: 공백 및 줄 바꿈이 요구 사항과 일치하지 않음)
  • 오답: 프로그램이 평가 시스템 데이터에 대한 올바른 결과를 반환하지 못했습니다.
  • 실행 시간 초과: 프로그램이 지정된 시간 내에 실행되지 못했습니다.
  • 메모리 초과: 프로그램이 한도보다 더 많은 메모리를 사용합니다.
  • 런타임 오류: segfault, 부동 소수점 오류 등 작업 중에 프로그램이 충돌했습니다.
  • 출력이 한도를 초과함: 프로그램이 너무 많은 콘텐츠를 출력하며 이는 일반적으로 무한 루프 출력의 결과일 수 있습니다.
  • 프로그램 샘플

    다음 샘플 프로그램을 사용하여 이 간단한 문제를 해결할 수 있습니다. 2개의 정수 A와 B를 읽은 다음 그 합을 출력합니다.

    gcc (.c)

    #include <stdio.h>
    int main(){
        int a, b;
        while(scanf("%d %d",&a, &b) != EOF){
            printf("%d\n", a + b);
        }
        return 0;
    }

    g++ (.cpp)

    #include <iostream>
    using namespace std;
    int main(){
        // io speed up
        const char endl = '\n';
        std::ios::sync_with_stdio(false);
        cin.tie(nullptr);
    
        int a, b;
        while (cin >> a >> b){
            cout << a+b << endl;
        }
        return 0;
    }

    fpc (.pas)

    var
    a, b: integer;
    begin
        while not eof(input) do begin
            readln(a, b);
            writeln(a + b);
        end;
    end.

    javac (.java)

    import java.util.Scanner;	
    public class Main {
        public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            while (in.hasNextInt()) {
                int a = in.nextInt();
                int b = in.nextInt();
                System.out.println(a + b);
            }
        }
    }

    python3 (.py)

    import io
    import sys
    sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
    for line in sys.stdin:
        a = line.split()
        print(int(a[0]) + int(a[1]))