A research pipeline for predicting Codeforces problem ratings using metadata, solved statistics, and lightweight statement features, with transparent documentation of historical errors and a corrected evaluation framework.

Stars

41

7-day growth

No data

Forks

5

Open issues

0

License

MIT

Last updated

2026-07-13

AI repository intelligence
FR-AI / ANALYSIS

Why it is worth attention

The project stands out for its rigorous self-audit, public erratum, and reproducible pipeline, offering a valuable case study in transparent ML research for educational data.

Who it is for

  • Competitive programming researchers
  • ML practitioners interested in educational data
  • Codeforces users and problem setters
  • Data scientists studying difficulty prediction

Use cases

  • Predicting problem difficulty for contest design
  • Improving problem recommendation systems
  • Analyzing feature importance in educational ML
  • Creating transparent benchmarks for reproducibility studies

Strengths

  • Transparent handling of historical errors with a public erratum and corrected pipeline
  • Reproducible experiment configuration with schema versioning and SHA-256 fingerprints
  • Two distinct evaluation settings (post-publication and cold-start) with clear limitations
  • Lightweight statement-structure features that improve cold-start prediction without deep learning

Considerations

  • Historical full-API results are not replaced by a corrected rerun, limiting updated comparisons
  • Cold-start setting does not fully simulate pre-contest conditions due to tag/metadata availability
  • Statement-only backtest is retrospective and uses post-contest data, not a prospective result

README quick start

Codeforces Difficulty Prediction

A research pipeline for predicting Codeforces problem ratings from official API metadata, solved statistics, exposure-aware features, and lightweight statement-structure features. Historical paper artifacts remain available for transparent comparison with the corrected evaluation pipeline.

Research status (updated 2026-07-12): Earlier paper results are retained for transparency and should be interpreted as retrospective. A code audit identified a split-configuration mismatch and test-informed model selection; the corrected controls and scope are documented in the public erratum. No corrected rerun has replaced the legacy full-API headline metrics. A separate locked historical statement-only backtest is now reported below.

Quick overview

If you only want the main idea, key results, and how to read the project quickly, see QUICK_OVERVIEW.md.

Cold-start note: Cold-start here means no solved-count behavior, not necessarily strict pre-contest prediction. Tags, metadata, and statement availability may not exactly match a real pre-contest setting.

Useful companion notes:

Historical project snapshot (retrospective)

ExperimentMain settingLegacy reported resultCurrent interpretation
Contest-grouped predictionHGB full APIMAE 166.9, within +/-200 = 69.7%Legacy descriptive evaluation
Forward-time predictionRF full APIMAE 152.5, within +/-200 = 71.2%Legacy descriptive evaluation
Solved-only baselinesolved-count onlyMAE 227-274Hypothesis-generating comparison
Cold-start predictionmetadata onlyMAE 318-332Legacy descriptive evaluation
Statement-structure extensionmetadata + text-lightMAE improves by 33.0-42.3Requires future confirmation
Rolling temporal validationfull API + age normaverage MAE 146.0Internal temporal analysis, not the future test

Locked historical statemen

Description

A reproducible machine-learning project predicting Codeforces problem difficulty from public API metadata and solved statistics.

Related repositories

Similar projects matched by category, topics, and programming language.

lopopolo
Featured
lopopolo GitHub avatar

harness-engineering

Harness Engineering is a methodology for improving coding agent outputs by carefully crafting the environment around them—providing curated context, tools, and executable constraints that encode an organization’s nonfunctional requirements and cumulative lessons.

AI & Machine LearningAI Agents
2,390
slvDev
Featured
slvDev GitHub avatar

esp32-ai

A 28.9 million parameter language model runs on an $8 ESP32-S3 microcontroller entirely on-device, generating simple stories at about 9.5 tokens per second.

AI & Machine LearningLarge Language Models
1,960
littledivy
Featured
littledivy GitHub avatar

mimic

mimic captures traffic from any iOS or web app and automatically generates a Python client library that lets you call the app's API like a regular library.

AI & Machine Learning
1,482