ac-predictor

Predict AtCoder's performance during the contest

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

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

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

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

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

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

Autor
keymoon
Dnevne instalacije
5
Ukupno instalacija
17.548
Ocene
16 2 0
Verzija
2.0.12
Napravljeno
01. 07. 2018
Ažurirano
09. 11. 2025
Size
70,8 КБ
Licenca
MIT
Važi za

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.