けものみち

まったりと、きのむくままに。

AtCoder のレーティングアナライザーをつくった

目標レーティングからパフォーマンス見積もるものは以前にも他の人が作っていたのですが、使えなくなっていたので、まあちょっとお試しで作ってみようじゃないかということでお遊び感覚で作ってみました。

( `・ω・´)っhttp://atcoderratinganalyzer.azurewebsites.net/ ※Azureに課金しないと続けられないので公開停止しました。すみません。

実装としては、Qiitaとかで公開されている計算式(非公式)と、(あまり良いことではないのですが精度上仕方ないので)内部APIを利用してユーザのコンテスト履歴を用いて計算します。

ただ、計算式は少々複雑になっており、過去のRatedコンテストのパフォーマンスと、次のRatedコンテストのパフォーマンスから新しい予想レーティング値を出すのは簡単ですが、逆に目標レーティング値からどれくらいパフォーマンスを出せばいいかを計算するのは難しいです。なので、とりあえずは二分探索で値を見積もるという感じの実装になっています。

まあ若干の修正はあったものの、とりあえず形になるものができたのでOKです。 こういうもの作るのは初めてなので温かい目で見てください。 春休み中に別言語で作り直して別サイトにあげるかも。