소속 단체 대회 자료 아카이브 기여 방법

소속 단체 대회 자료 아카이브에 기여해 주셔서 감사합니다.

전국 대학생 프로그래밍 대회 동아리 연합은 “프로그래밍 대회를 준비하는 동아리의 교류와 화합을 목적으로 한다.”라는 목적을 이루기 위해 노력하겠습니다.

이 문서는 저장소 구조를 설명하기 위한 안내 문서입니다. 실제 디렉터리 구조와 예시는 GitHub에서 저장소를 함께 보면서 읽는 것을 권장합니다.

기여 방법

Pull Request 방법

Email 방법

빠른 시작

1. 기존 단체 설명을 수정하려는 경우

예시:

2. 새 단체를 추가하려는 경우

  1. archive/{org}/index.md를 만듭니다.
  2. 단체 설명을 적습니다.
  3. 단체 정책에 맞는 라이선스 또는 저작권 고지 파일을 반드시 함께 추가합니다.
  4. 문의 가능한 단체 연락처를 함께 적어 주시기 바랍니다.
  5. 필요하면 그 아래에 대회 디렉터리를 추가합니다.
  6. archive/index.md에 새 단체 링크를 추가합니다.

필요하면 단체 템플릿을 복사해서 시작할 수 있습니다.

예시:

archive/
  example-club/
    index.md
    LICENSE.md

3. 기존 대회 자료를 수정하거나 추가하려는 경우

  1. archive/{org}/{contest}/ 디렉터리로 들어갑니다.
  2. 필요한 파일을 추가하거나 수정합니다.
  3. archive/{org}/{contest}/index.md에서 설명과 링크를 함께 정리합니다.

예시:

4. 새 대회 아카이브를 추가하려는 경우

  1. archive/{org}/{contest}/ 디렉터리를 만듭니다.
  2. 그 안에 index.md를 만듭니다.
  3. 문제, 해설, 스코어보드 등 대회 자료를 정리합니다.
  4. 테스트데이터가 크다면 저장소에 직접 넣지 말고 GitHub Releases, Google Drive 등 외부 저장소에 올린 뒤 링크를 적습니다.
  5. archive/{org}/index.md에 대회 링크를 추가합니다.

필요하면 대회 템플릿을 복사해서 시작할 수 있습니다.

예시:

archive/
  ucpc/
    ucpc-2025/
      index.md
      qualifier/
        problem-ko.pdf
        problem-en.pdf
        editorial.pdf
      final/
        editorial.pdf

세부 규칙

기본 원칙

권리 및 책임

이름 규칙

예시:

단체와 대회 구조

구체적인 예시는 archive/ucpc/ 아래의 실제 구조를 참고해 주시기 바랍니다.

archive/
  {org}/
    index.md
    {contest}/
      index.md
      ...

로 이해하시면 됩니다.

자료 형식

파일 형식

대회 디렉터리 안에 어떤 파일을 둘지에 대한 엄격한 규칙은 없습니다.

다만 가능하면 최대한 깔끔하고, 이해하기 쉬운 형태를 권장합니다.

특히 평탄화할 수 있다면 평탄화하는 쪽을 권장합니다.

스코어보드의 경우 HTML, CSV, JS, CSS, 이미지 등 관련 파일이 함께 오는 경우가 많기 때문에, 이 경우에는 scoreboard/ 폴더를 두고 그 아래에 파일을 모아 두는 편이 더 자연스럽습니다.

테스트데이터의 경우 용량 문제 때문에, 가능하면 이 저장소에 직접 올리지 말고 GitHub Releases, Google Drive 등 외부 저장소에 올린 뒤 링크를 거는 방식을 권장합니다.

특히 대용량 테스트데이터는 레포를 가볍게 유지하기 위해 외부 링크로 관리해 주시기 바랍니다.

구조 예시

archive/
  ucpc/
    index.md
    LICENSE.md
    ucpc-2025/
      index.md
      qualifier/
        problem-ko.pdf
        problem-en.pdf
        editorial.pdf
      final/
        editorial.pdf
      scoreboard/
        index.html
        SPOTBOARD_LICENSE.txt
        css/
        js/

위처럼 대회 디렉터리 아래에서 예선과 본선을 나누어 정리하면 다음과 같은 장점이 있습니다.

예선과 본선을 나눌 필요가 없다면 대회 디렉터리 바로 아래에 파일을 두어도 괜찮습니다.

반대로 이미 폴더가 깊은 raw 구조를 갖고 있어도 올릴 수 있습니다.

권장 파일 이름