AtCoderで初めて色がつくまでの話(茶色) レートが中々上がらなかった原因

2018-11-25
%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0%E7%AB%B6%E6%8A%80%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E9%9B%91%E8%AB%87
    

目次

はじめに

AtCoderで、ついに色がつきました。茶色になりました。 始めた当初は、はっきり言って茶色なんて大したことのないランクだと思っていました。

というのも、ある程度ランクが高い人のコンテスト成績表をみると、最初の2〜3回でだいたい灰色を卒業をしており、特に高い人は1回目で茶色に到達している人いたので...全くのプログラミング初心者ではない自分も、少し回を重ねるだけで到達する程度のものだと思ってました(謎の自信)。

しかし、ここまで来るのに4ヶ月、回数にして10回目の参加での到達で想定よりも時間がかかってしまいました。

初めての参加

https://tech-blog.s-yoshiki.com/2018/07/294/

初めての参加は、勢いで参加し、事前調査もせずぶっつけ本番で挑みました。 標準入出力から値を受け取るだけで、四苦八苦してしまい結果も散々でした。

3回目くらいで雰囲気を掴む

https://tech-blog.s-yoshiki.com/2018/08/421/

3回目の出場くらいで問題の雰囲気や傾向、コツがわかりました。 もちろん、しっかりと対策を立てた上で1回目から出場していれば最初の数回を棒に振ることもありませんでしたし、 低レートを叩き出すこともありませんでした。

苦戦した原因

ここまで時間がかかった要因は、単純な実力不足ですが、強いて他の理由をあげるのであれば、 上にも書いたように、最初の数回で連続で低スコアを出してしまい、レートが上がりづらい傾向が出ていたのではないかと思います。 まず、そもそもAtCoderの仕様として、リセマラ封じのためによっぽど成績が良くない限り、最初の数回は実力よりも低いレートになるようです。

レートの上がり方について

最初の数回は、悪いスコアを連続で叩き出していたたため、上がり方が緩やかな感じでした。 何回かやっていくうちに、ABCのCD問題をクリアするのは厳しいと思い、AB問題に全力で取り組むことに集中しました。

具体的にはAB問題を5分前後で解くようにしました。

これだけでも、パフォーマンスを700〜1000程度出すことができました。

各問題の内容と必要になる思った知識 - ABCの場合

レベル感としては

A <= B <<< 壁 <<< C < D

のようだと感じています。

A問題に関しては、基本的な四則演算、プログラミング構文、

B問題は、上記の要素に加え、配列操作やソート、マップなどが使えること(FizzBuzz程度)、

C、D問題は、基本的なアルゴリズムを押さえておかないと解くのは厳しいかと思います。

ツール

また、初期にレートが上がらなっかた要因として、開発しやすい環境を整えなかったことも一つだと思います。 AtCoder上にコードテストする機能があり、それを使って最初の数回はデバッグしていましたが、自分用の環境を整えてデバッグするようにしました。

https://tech-blog.s-yoshiki.com/2018/09/585/

レート感の話

プログラマとしては最低、緑くらいなきゃ厳しいのかな...がんばろ 終わり

    
s-yoshiki
s-yoshiki
githubtwitterqiita
Web作ってますが、インタラクティブなプログラミングも好きです。
JavaScript / Vue / node.js / PHP / AWS / OpenCV

関連記事

10進数から2進数 2進数から10進数への変換 JavaScript
10進数から2進数 2進数から10進数 テスト 10進数から2進数、2進数から10進数への変換を行うJavaScriptのコードの紹介。 JSの場合、10進数から2進数への変換はメソッド。2進数から1…

JavaScriptの配列ショートハンド (AtCoder用)

JavaScriptでワーシャルフロイド法を実装
AtCoder ABC012 D問題 D - バスと避けられない運命 解説 実装 AtCoder ABC012 の D問題でワーシャルフロイド法が利用できる問題が出てきたので、 JavaScriptで実装しました。 AtCoder ABC012 D問題 D…

JavaScriptによる2分探索(バイナリサーチ) のサンプルコード
2分探索について ソース 参考 JavaScriptで2分探索(バイナリサーチ)を実装してみました。…

ハイフンとかマイナスとかダッシュとか

少なくとも、これら説明できない奴、エンジニアとして、マジでやばいので自覚した方がいいぞ。について
元ネタ(?) 派生 最後に Twitterでネタ(?)になっていたのでメモ。 元ネタ(?) https://twitter.com/t0riumi/status/1225422385093865472 派生 https://twitter.com/eg19/status…

Qiitaでバズるとこうなる。アクセスの分析や原因考察をする
投稿した記事 アクセス分析 Qiitaでバズった原因の考察 終わりに Qiitaに数年前から投稿していますが、延3日間で「1000 いいね」をもらいました。今までの最大いいねが20…

JavaScriptで幅優先探索 (bfs) を実装する
bfsソースコード 前提 bfs関数 テストコード JavaScriptで幅優先探索 (bfs) を実装し簡単な最短経路の探索問題を解いてみました。 AtCoderの問題を参考にしています bfsソースコード 前提 bfs 関数の定義について 引数 table…

JavaScriptでbig-integerでできること
定数 メソッド abs add, plus and bitLength compare compareTo compareAmb divide, over divmod equals, eq greater, gt greaterOrEquals, geq…

ソースコードレビューのポイントをまとめる
ソースコードレビュー時のポイントを各所のブログから集めてまとめました。以下 https://gist.github.com/s-yoshiki/9e446d69cf388703a4711f7e69cba173

最新の投稿

SQL整形ツールを作成した
特徴 使い方 FW/ライブラリ等 nuxt sql-formatter-plus Monaco Editor おまけ ソース SQL整形ツールを作成しました。 URLはこちらです。 SQL…

ファイルの1行目を表示 Linuxコマンド head
head コマンド例 headコマンドでファイルの 1行目もしくは指定した行数だけ表示する方法。 head 利用できるオプション コマンド例 の 1行目だけを表示 の 5行目までを表示 カレントディレクトリ以下の全てのtxtファイルの1行目を表示

Amazon S3 と ローカルファイルのチェックサムの比較
s3apiでEtagを取得 検証 マルチアップロード時の注意点 Amazon S3 の Etagを使ってファイルの整合性チェックをする。 s3apiでEtagを取得 S3 APIを利用するとEtagを取得します。この値はmd5のハッシュ値になります。 検証 MD…

github.io / gitlab.ioで公開されている質の高い技術ドキュメント
AWSによるクラウド入門 Pythonプログラミング入門 普通の人が資産運用で99点をとる方法とその考え方 2018年の段階で私が知らないこと github.io / gitlab.io で無料で公開されている興味深いドキュメントのmemo AWS…

10進数から2進数 2進数から10進数への変換 JavaScript
10進数から2進数 2進数から10進数 テスト 10進数から2進数、2進数から10進数への変換を行うJavaScriptのコードの紹介。 JSの場合、10進数から2進数への変換はメソッド。2進数から1…

JavaScriptの配列ショートハンド (AtCoder用)

JavaScriptでワーシャルフロイド法を実装
AtCoder ABC012 D問題 D - バスと避けられない運命 解説 実装 AtCoder ABC012 の D問題でワーシャルフロイド法が利用できる問題が出てきたので、 JavaScriptで実装しました。 AtCoder ABC012 D問題 D…

GitHub Actions で Gatsby をビルドし Amazon S3 にデプロイする
GitHub Actions について あらかじめ準備しておくもの AWS IAM ユーザを環境変数にセットする workflowの記述 ビルド バッジを利用する 終わりに 参考にしたところ Gatsbyで作った静的サイトを、GitHub Actions…

cloudinaryによる画像ファイルの管理 はじめてみる
目的 cloudinary について 他のサービスとの比較 料金プラン アカウントの登録 利用してみる ダッシュボード 画像の編集 APIベースでのアクセス 感想 参考 画像の管理や配信、さらには加工といった事ができるsaas型のcloud…

JavaScriptによる2分探索(バイナリサーチ) のサンプルコード
2分探索について ソース 参考 JavaScriptで2分探索(バイナリサーチ)を実装してみました。…

Tags

Dates

© 2020   404 motivation not found