LoginSignup
9
3

More than 1 year has passed since last update.

はじめに

これは、Advent Calender 「競技プログラミングを始めたばかりの人に伝えたいこと」 7日目の記事です

この記事では、個人的に革命的だった競プロの小技を書いていきます

拡張機能

ac-predictor

言わずと知れたパフォーマンス予測システム
順位表からパフォーマンスとレート変化が分かるのである程度安心できる

ダウンロード

AtCoder Language Buttons

提出のところに言語選択のボタンを設置できる。
PythonとC++を使う僕にとっていちいちスライドさせるUI(?)をいじる必要だったり、言語を間違えて提出してペナ、ということが防げるので便利

ダウンロード

atcoder_submit_keyboard_shortcut

TwitterのようにCtrl+Enterで提出できるもの
ツイ廃の僕にとってかなり使いやすい

ダウンロード

AtCoder_submit_keyboard_shortcut

コンテスト中でも順位表からその問題のDiffなどのいろんな情報を取得できる
かなり高性能だが、重いので自動更新をするコンテスト中での使用は撤退後がいい

ダウンロード

他にも、いろいろ便利な拡張機能があるので是非調べみて欲しい

コーディングテクニック/アルゴリズム

rep(i, n)

ループを書く時にいちいちforを全て書くのは面倒なので、以下のようにする

#define rep(i, n) for(ll i = 0; i < (n); ++i)

こうすると、rep(i, n)とするだけでn回ループすることができる。
書く量が一気に減るのでかなり便利

chmin/chmax

変数をもう一つの変数と比較して、もう一つの方が大きかったら(小さかったら)代入して、trueを返す。
比較と代入を一気にできるので意外と便利

template<typename T> bool chmin(T& a, T b){if(a > b){a = b; return true;} return false;}
template<typename T> bool chmax(T& a, T b){if(a < b){a = b; return true;} return false;}
9
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
3