2020-06-20から1日間の記事一覧
0.はじめに 僕自身が学んでる途中なので嘘などあるかも知れません 高速化に目覚めたので書いていきます これ使うだけじゃ速くならないと思います SIMD使う前の準備だと思って練習してます atcoderのC++(GCC 9.2.1)準拠です 1.入出力 int main(){ int res; as…
staticな変数を使ってこう出来ます 最初に前処理が必要な競技プログラミングのライブラリに重宝します void f(){ static bool init=0; if(!init){ init=1; //初回実行処理 } //毎回実行する処理 }
gcc拡張により 関数の前に__attribute__(( constructor))を付けると最初に 関数の前に__attribute__(( destructor))を付けると最後に呼ばれます __attribute__((constructor)) void constructor() { cin.tie(0); ios::sync_with_stdio(false); cout<
コード例は抽象化してません あしからず 1.がちがちの動的セグ木を使う コピペありの環境なら一番いいです 思想としてはポインタを使って必要になった時にノードを作るです 構築O(1)です template<typename T> struct dynamic_segment{ struct node; using np=node*; str</typename>…