ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • What is Codeforces?
    코딩 2024. 5. 18. 11:00

    What is codeforces?

    Codeforces는 프로그래밍 대회를 연습할 수 있는 사이트입니다.

    주기적으로 대회가 진행되며, 대회는 정보올림피아드와 유사한 형식으로 진행됩니다.

    대회에 참가하여, 시간 내 문제를 읽고, 해결책을 프로그램으로 제시하는 방식입니다.

    프로그램 제출은 백준, 코드업 과 유사한 방식입니다.

    각 대회마다 여러분의 레이팅(점수)가 정해집니다.

    문제를 빠르고 정확하게 맞출수록, 더 높은 점수가 배정됩니다.

     

    그러니 문제 풀이 능력을 기를 수 있겠죠?

    Div? Rating?

    Codeforces에서 개최되는 대회를 보면 Div. 3 , Div. 2 , Rated for Div. 2 등의 내용이 제목에 있는 것을 보실 수 있습니다.

     

     

    Div 는 대회의 난이도 표시입니다.
    Div. 1 : 가장 어려운 대회
    Div. 2 : 적당히 어려운 대회 : 어느정도 접근할만함.
    Div. 3 : 실버 ~ 골드만 풀어도 도전해볼만한 대회
    Div. 4 : 진짜 모든 문제가 실버인 대회…

    Rated for Div. 2 → Div. 2와 동일한 난이도

     

     

    Rating은 현재 여러분의 코딩 실력을 나타내는 지표입니다. (대회를 진행하면서 보는 점수와는 다릅니다...)

    이 레이팅에 따라 어떤 대회에 참가 가능한지가 결정됩니다.

    Div. 1 : Rating 1900 ~
    Div. 2 : ~ Rating 1900
    Div. 3 : ~ Rating 1600
    Div. 4 : ~ Rating 1400

    총 6번의 대회를 진행하고 나면, 여러분의 정확한 레이팅이 표시되며, 여러분들의 프로그래밍 실력을 확인할 수 있습니다.

    Contest

    대회는 정해진 시간동안 문제를 읽고 풀어내야 합니다. 이때, 문제를 풀때까지 걸린 시간, 그리고 문제를 제출하는데 사용된 횟수에 따라 대회에서의 점수를 배정받습니다.

    예시로, 다음과 같이 점수 배점이 있다면, A번 문제는 500점, B번 문제는 1000점.. 을 기본으로 배정 받고, 이를 풀면 페널티가 적용된 점수를 받습니다.

    → 점수 배점 시스템

    • Codeforces 방식 : Div. 2 / Div. 1
    각 문제를 해결하면 다음의 점수를 받습니다.
    # max(문제 배점 × 0.3, 문제 배점 - 시간 페널티 - 제출페널티)
    이때 시간 페널티는 다음과 같습니다.
    # 해당 문제를 마지막에 맞춘 시간 × 문제 배점 ÷ 대회 시간 ÷ 125
    제출 페널티는 다음과 같습니다.
    # (그 문제에 한 제출 중 Pretest 1을 통과한 제출의 수 - 1) × 50
    • ICPC 방식 : Rated for Div. 2 / Div. 3 / Div. 4
    각 문제를 해결하면 해결한 문제수가 1 추가되고, 다음의 페널티가 별도로 기록됩니다.
    이때, 페널티는 다음과 같습니다.
    # 해당 문제를 마지막으로 맞춘 시간(분 단위) + 제출 페널티
    이때, 제출 페널티는 다음과 같습니다.
    # (그 문제에 한 제출 중 Pretest 1을 통과한 제출의 수 - 1) × 10

    이 점수는 대회에서, 우열을 가르기 위한 점수로, 전체적인 프로그래밍 실력을 표시하는 Rating 과는 별개의 개념입니다.

    How can I participate?

    1. Codeforces에 들어가 회원가입을 하세요.
    2. Codeforces에 로그인 하신 후 → Contests 에 들어가시면 예정된 대회들이 표시됩니다.

    1. 참여하고 싶은 대회에 미리 Register 버튼을 눌러 등록하세요. (_Register_를 했다고 대회에 꼭 참가해야 하는것은 아니며, 참가하지 않으면 기록에 반영되지 않습니다!)
    2. 정해진 시간에 대회에 참가하세요! 문제를 읽고 푼다음 백준처럼 _Submit_에다가 코드를 넣고 제출하면 됩니다.

    Lock / Hacking? (처음 접하는 사람은 몰라도 됨!)

    참여자는 자신의 코드를 Lock 한 후, Lock을 진행한 타인의 코드를 해킹할 수 있습니다.

    여기서 해킹은, 상대방의 코드가 옳지 않은 테스트 케이스를 돌려봄으로써, 점수를 획득하는 제도입니다. 만약 해킹에 성공하면 100점, 실패하면 50점이 감점됩니다.

    이렇게 제출된 모든 테스트 케이스는 이후에, 모든 사용자의 코드에 적용되어, 테스트 됩니다. 이 테스트를 System Test라고 부르며, 여기서 답이 틀린 경우에도 감점이 적용됩니다.

    Hack은 ICPC Rule의 경우 대회 종료 ~ 후 12시간, Codeforces Rule은 대회 시작 ~ 종료의 시간까지 가능합니다.

Designed by Tistory.