ac-predictor

Predict AtCoder's performance during the contest

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

You will need to install an extension such as Tampermonkey to install this script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Necesitará instalar una extensión como Tampermonkey para instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

Autor
keymoon
Instalaciones diarias
0
Instalaciones totales
17.548
Calificaciones
16 2 0
Versión
2.0.12
Creado
1/7/2018
Actualizado
9/11/2025
Tamaño
70,8 KB
Licencia
MIT
Funciona en

Important Notice

For any issues, please report them as an issue on GitHub.

Regarding External Communication

This script communicates with external servers. The communication is strictly used for the following:

For detailed information about this data and why it must be fetched from external sources, please refer to the documentation. Since we only handle data retrieval, no account information or submission data is transmitted through this communication.

Details Technical details (as of December 2020) are available at The Technology Behind ac-predictor - Qiita. Below is a summary of sections relevant to external communication.

Why the Script Needs to Communicate with External Sites

For performance prediction, we require a value called APerf, which is calculated based on each participant's past performance.
If each user were to retrieve this value individually, it would result in approximately 10,000 requests per user. Considering load issues, we've implemented a system that aggregates these requests and computes APerf in batch, then distributes the results.

About APerf

APerf is a special rate used in performance calculations, derived from a weighted average of past performances. For detailed information, please refer to AtCoder's Rate Calculation Formula - Qiita. (This is the "internal rate" referred to in this article.)

About the Source Code

This script consists of approximately 1,000 lines of code. It was created using a tool to consolidate multiple files that originally existed as separate files. For those wishing to examine the script's source code, we recommend reading the pre-bundled source at this location. You can verify that running pnpm bundle at commit time for version updates produces identical script outputs.

Feature Description

Predictor

Adds a row to the rankings page displaying each participant's performance score and rating.

Estimator

Displays the value needed to achieve a specific rating or the rating you would have achieved with a particular performance score. The functionality can be toggled using the "Swap" button.