見出し画像

競プロを始めようと思った人へ

注意:この記事はリアルの知り合い向けに書いている部分が多いです。
記事中の「キノコサポート」はリア友以外でもある程度は受け付けますが、正直「ある程度」になってしまうと思われます。

注意:僕のネット上での名前は、「そこらへんのキノコ」なので、僕のサポートをキノコサポートと呼んでいます。
正直まだ初級者なので、基礎の基礎しかサポートできません。

注意:この記事は下の記事から飛んでくることを想定されたものです。
先にそっちを読んだ方が若干わかりやすいです。というか注意多いな


python? or c++?

競プロをやるときに使用される言語には、python(パイソン)とC++(シープラスプラス)が有名どころとしてありす。
それぞれのメリット・デメリットをまとめてみます。

参考:pythonが競プロにおススメな理由 - 文系独学プログラマーの仕訳帳 (tabisukelog.com)
AtCoder初心者が『Python』を使うべき理由! – とれたてのうにだよ (unidayo.com)

C++

メリット

  • 使ってる人が一番多い

  • 解説などの記事の量が多い

  • 基礎的な部分はatcoderに体系化された無料の教材がある。
    0から始めても多分本とか買わないでも行ける。

  • 処理が速い

  • キノコサポートが受けられる
    初心者のうちは気軽に聞いてもらって大丈夫です。

デメリット

  • むずい

python

メリット

  • 簡単

  • レートが伸びやすい(慣れるのが早い&書きやすい)

  • 競プロ以外でも使えることが多い
    (例えばblender、機械学習の作成、webスクレイピングなど)

  • 筆者と同校の場合授業がpython(最低でも現高1は)

デメリット

  • 体系的な教材を僕が知らない。
    0から始めるんだったらもしかしたら本買うことになるかも?

  • 解説生放送がC++
    (理論の解説部分がほとんどなのであまり影響なし)

  • キノコサポートが受けられない
    僕はpythonについてはほぼ知りません。

  • C++より人が少ない

これ以降は初心者のうちはほぼ気にしなくていいデメリットです

  • 若干遅い(のでごくごくまれに解けない問題が出るかも)

  • JOI本選がC++しか使えない

  • 情報が若干少ない

pythonからC++に乗り換えるのもそこまで大変じゃないと思うので、初心者のうちはこれっていうのも全然ありだと思います。
授業に関しては、そこまで難しいことやらないと思うので、あまり気にしなくてもいいんじゃないかなって思います。(簡単なことほど言語間の書き方の差が小さいことが多い)


pythonでの始め方

知りません。各自でググってください。ごめん。以上。
pypy(パイパイ)っていうの使うと若干早くなるそうです。

C++での始め方

注意:これはひとまず始めるための方法です。
本当は「競プロ 環境構築」とか調べて、手元で実行できるようにすると便利です。結構手間がかかるのでやろうと思ったら頑張ってください。
僕はvisual studio を使っているので、それならば聞いてくれればやり方を教えられます。

これに書いてある通りやりましょう

1章をやれば十分ABCの1問目は解けます。

そして上のがいい感じに終わったらこれをやりましょう。
C++やったことある人もこれをやりましょう。

これの2,3問目まで解き終わったあたりから、ABCに出始めましょう。
詳細はこの記事を読んでください。(丸投げ)


おわりに

ここまで読んでいただきありがとうございます!!
是非一緒に競プロライフを送りましょう!!
競プロを始める場合は、twitterに競プロアカウントを作るといいと思います。界隈の人みんな優しい気がします。
AtCoder コミュニティ / Twitter
このコミュニティに参加すればある程度は質問に答えてくれると思います。

あとどちらで始めるにせよ、クリップボード履歴の機能はオンにすると便利です。
ただし定期的にすべてクリアしないと多分メモリ消費がやばそうです。


こんな感じでコピーしたものが保存されていきます


この記事の作者名はしばらくPC室前に書いてあるので、声をかけてくれるととびはねて喜びます。


いいなと思ったら応援しよう!