벤치마크 · coding

Codeforces (Elo)

0 결과 0 모델

Codeforces (Elo)는 시간 제한이 있는 대회 문제를 풀게 하여 모델의 경쟁 프로그래밍 능력을 측정하며, 결과를 Codeforces Elo 레이팅(대략 0~4000, 약 2000 이상이면 강함)으로 나타냅니다.

자세히 보기
예시
전형적인 문제는 시간 제한이 있는 알고리즘 문제입니다. 예를 들어 문제의 입력을 읽어 엄격한 시간·메모리 제한 안에서 올바른 답을 출력하는 것으로, 그래프 탐색·동적 계획법·그리디 알고리즘 같은 기법을 사용합니다.
채점 방식
결과는 하나의 Elo 숫자로, 모델이 푼 대회 문제의 수와 난이도를 바탕으로 계산되며 Codeforces가 인간 참가자에게 사용하는 것과 같은 레이팅 척도 위에 놓입니다.
검증 방식
제출된 각 해답은 자동으로 채점됩니다. 코드는 컴파일되어 숨겨진 테스트 케이스 묶음에 대해 실행되며, 시간·메모리 제한 안에서 올바른 출력을 내야만 통과로 인정됩니다.
왜 중요한가
여러 단계를 거치는 알고리즘적 추론과 제약 속에서 정확하고 효율적인 코드를 작성하는 능력을 반영하며, 모델의 코딩 실력을 사람들이 이미 이해하는 레이팅 척도에 대응시킵니다.
예제 풀이
"Codeforces (Elo)"는 모델에게 경쟁 프로그래밍 문제를 풀게 하고, 그 실력을 사이트에서 사람이 받는 것과 같은 Elo 레이팅으로 표현한다. 대표적인 쉬운 문제(Div. 2 A, 약 800): "t개의 테스트가 주어지며, 각 테스트에는 n과 배열 a_1…a_n이 주어진다. 한 번의 연산에서 i≠j를 골라 a_i−=1, a_j+=1을 수행한다. 모든 원소를 같게 만들 수 있으면 YES를, 아니면 NO를 출력하라." 입력 `2 / 3 / 1 2 3 / 2 / 1 2`에 대한 기대 출력은 `YES` 다음에 `NO`이다. 핵심은 이 연산이 총합 S=Σa_i를 바꾸지 않는다는 점이라, 각 원소를 같게(각각 S/n으로) 만들 수 있는 것은 n이 S를 나누어떨어뜨릴 때뿐이다: [1,2,3]은 합 S=6이 3으로 나누어떨어져 → YES, 반면 [1,2]는 합 S=3이 2로 나누어떨어지지 않아 → NO. 올바른 제출은 stdin에서 입력을 읽고 이 답들을 출력하며 제한 시간 안에 모든 숨겨진 테스트를 통과해야 한다; 모델의 Elo는 그것이 안정적으로 푸는 문제의 난이도로부터 추정된다.

이 벤치마크에 대해 아직 검증된 점수가 없습니다.