AtCoderで水色になりました - 3月 11, 2019 こんにちは、ぐぐりら(@guglilac)です。 先日のABC121で、ようやく水色になりました。 〇色になったら記事を書くという慣例があるみたいで、次に色が上がるのがいつかもわからない(もしかしたらこのまま一生水色。。。??)ので、記念に書いておきたいと思いました。 でもあんまり参考になるようなことをしていないので、ざーっと目を通していただくのでもうれしいです。 ## はじめた AtCoderを始めたのは6月ごろだったと思います。 始めたころの記事がこちらです。 AtCoderを始めてみて面倒に感じた作業をシェルスクリプトにしてみた この記事にも書いてありますが、一瞬だけ昔にAOJの過去問を解いていたりしたので全くの初めてではないのですが、ほぼ初心者でした。プログラミング自体は2年前ぐらいにはじめたというスペックです。 大学が数学+情報系のような学科なので、アルゴリズムとかは一応授業で出てきたものは知っている(知っているだけで実装したことはあまりない)みたいなレベル感です。 AOJはC言語とpythonを使ってやってて、どちらも文法の勉強というつもりでやっていました。 今思うと、なんかしらプログラミングやりてえ!という気持ちの行き場がなく(その頃はアプリ作れるのとかも完全に頭になかった)、それがAOJに向いていたような気がします。 でバイトとか卒論とかやってるうちにプログラミング欲がそこで満たされるのと同時にAOJをやめていきました。笑 AtCoderを始めたのは、前の記事にも書きましたが就活の技術テストが解けなくて悔しかったからです。 青いロゴの就活生から嫌われている会社とか、one pieceのコスプレするCMの会社とか、緑のメッセンジャーアプリの会社とか、たぶん他にもいろいろ競技プログラミングチックな技術テストを選考で課してくる会社は多いのだと思います。 プログラミング好きなのに技術テストで落とされてインターンにいけないのは悲しい、と思って勉強することにしました。 M1の夏のサマーインターンの選考時期が6月ぐらいなので、ちょうどその辺りにAtCoderを始めました。 ## やったこと あんまり解けなくてモチベが下がるのが嫌な人間なので、ABCが十分解けるようになってからARCとかAGCに出ようと思っていたので未だにABCと、解けそうな配点の企業コンだけでています。 500点問題とかも解いたことないので、ここからまたレートが停滞するんだろうなと怖いです。 なので、やったことはABCの過去問をひたすら埋めるだけです。 自分はA,Bは解ける,Cは6,7割解ける、Dは2割ぐらい解ける、ぐらいの感覚でスタートしました。 なので、Cを最初練習して、だいたい解けるようになったらDを練習する、みたいにしていきました。 たぶん、自分のその日の調子でできるできないが分かれるレベルの問題を練習するのがいいんだろうなあ、と思っています。 コンテスト当日は、Cまでを確実に早く解くのを目標にしてました。Dが最初は解ける気がしなかったので。 いまでももちろん3完とかはザラにありますが、心構えはあんまり変わってないです。 Cを重点的に練習したと書いたのですが、A,Bもしっかり埋めています。 自分は変に几帳面なところがあるので(というか収集癖?)、全部解いてAtCoder Problemsの緑が増えるのが好きというのが大きいです。 ## 自作ツール とは言っても、あまりモチベが続くような人間ではなく、コンテストのある土日も飲み行ったりするのが好きであまり参加できないのが続くと精進するモチベも続かないので、一時期はあまりやれてませんでした。 それでも細々と続けられたのは、自作のツールを作っていたのが要因の一つだと思っています。 自作ツールといってもそんな大層なものではないのですが、サンプルケースをスクレイピングしてきて自動でテストし、全部テストに通ったら自動で提出してくれるツールです。 記事にもしています。 自作AtCoderツールをリファクタリングした リポジトリも一応公開しているのでよかったら参考にしてください。 atcoder-tools 作ると使いたくなるという習性をうまく利用したライフハックです。 あの、受験の時にかっこいい筆記用具を買うのと同じです(?) ## 言語 pythonをつかってます。 競技プログラミング以外では機械学習、データ分析みたいなところでプログラミングしていることが多いので一番自然と慣れているのがpythonだからです。 夏頃に一回C++を勉強して使ってみたのですが、まだpythonでも通せるならpythonで行けるところまで行けばいいんじゃね、となりしばらく書いていません。 他にもjavaやscala、rubyをバイトで使ったことはありますが付け焼き刃的なのでもう全て忘れました。 新しい言語がやりたくなったらまた考えようと思います。 ## 解説(復習)記事 絶対に書く、とかは全く決めてなくて、通せなくて解説見てACした問題とか、めっちゃデバッグしんどくてしんどかった気持ちを供養したい時とかにヤケ酒しながら書いてました。 あとコンテスト出た後に参加記録的な雑なまとめも書いたりしました。 書いた方が整理されてめちゃめちゃ効果あるのは実感しました。 ABC121Dのxorのやつも,直前にABC029Dを解いていて復習していたのが頭にあったのが発想に繋がったなあとコンテスト中に思ったりしました。 ただ絶対書くと決めると自分は嫌になってやめちゃうので決めずにのんびりやっています。 ## おわりに AtCoderを始めたときの目標が水色だったので、ひとまずよかったです。 Kaggleもやってみたいと思って手をつけられてないので、そっちに手を出すか、頑張って青色を目指すか、みたいなところです。たぶんどっちもやってそうです。 青色になりました記事がかけるといいなあ、かけるように精進するか。。。笑 ありがとうございました。 この記事をシェアする Twitter Facebook Google+ B!はてブ Pocket Feedly コメント
コメント
コメントを投稿