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

関連記事

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

AWSソリューションアーキテクト参考資料集
ブラックベルト サービス別資料 AWS Well-Architected フレームワーク 特に目を通すべき資料の一覧です。 ブラックベルト https://aws.amazon.com/jp/aws-jp-introduction/ サービス別資料 https://aws…

AWS ソリューションアーキテクト不合格体験記を集める
AWSソリューションアーキテクトアソシエイトに1回落ちたけど勉強し直して合格した話 AWS認定ソリューションアーキテクトアソシエイト(SAA)不合格体験記 非エンジニアがAWSソリューションアーキテクトに合格するまで AWSソリューションアーキテクト認定に落ちた話 AWS…

shields.ioで技術系のアイコンをたくさん作ってみる
shields.ioについて カスタムバッジを作る Color カスタムスタイル simpleicons おすすめアイコンを作った 言語系 ライブラリ・フレームワーク OS ミドルウェア エディタ・IDE…

最新の投稿

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

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

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

Vue.jsで作成された、ちょっと面白くて役立ちそうなサービス
UIコンポーネント VueSocial CKEditor 5 Vue.Draggable Vuetable 2 vuejs-datepicker Kalendar Vue Apexcharts Vue.js Google Charts vue-cart WebIDE…

GitHubのリポジトリをGitLabに同期する GitLabのミラーリング機能
GitLabのミラーリングについて GitHubのリポジトリをGitLabに反映する その他 参考 GitLabのミラーリング機能によりGitHubなどの外部のリポジトリとのミラーリングを行うことができます。 これを使ってGitHub…

WordPressやめます Gatsbyに移行しました
これまでのWordPress運用 なぜWordPressを捨てるのか? なぜGatsbyを利用するのか? gatsbyについて WordPressから記事の救出 移行対象記事の抽出 記事の置換 Gatsbyテーマの作成 Gatsby…

WordPressのDBから記事データを抽出する
WordPressのDB関連図 公開記事一覧の取得 タグ・カテゴリの取得 サムネイルの取得 おまけ: PHPスクリプト化しました 参考にしたところ WordPressにため込んだデータMarkdown化しGatsby…

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

Firebase + Nuxt で認証付きページを作るときに参考にしたいところ
Webアプリケーションのセッション管理にJWT導入を検討する際の考え方 Service Worker によるセッション管理 ユーザー セッションの管理 Nuxt.jsとFirebaseでSPA×SSR×PWA×サーバーレスを実現する CookieとセッションとJWT SSR…

GolangをCGIとして実行する
環境 golang パッケージ ソースと実行 ビルドとサーバ実行 標準ライブラリのみ Golang を CGIとして実行する際のメモ 環境 golang パッケージ 以下のモジュールを利用しています。 github.com/gorilla/mux…

Tags

Dates

© 2020   404 motivation not found