この記事はCompetitive Programming Advent Calendar 2016 - AdventarのDay 11の記事として作成されました。
最近hotな人の褌で相撲を取る的まとめ記事を作成しました。
Competitive Programming Advent Calendar 2015, 2016を中心に、言及されている記事を集めました。
私が特に「いいね」と思ったものについては★を付けています。
ICPC
- ★ICPC のチーム戦略について - J * A * P * L * J
- Competitive Programming Advent Calendar 2015
- rng_58, semiexp, japlj
- ★ICPC のチーム体制について - (iwi) { 反省します - TopCoder部
- ★ICPCに向けたUECodersの戦略 - とどの日記
- ★~shiokawaのICPCに向けたチーム練習、コンテスト直前の準備について - しおしおたのブログ
- ★ICPCアジア地区予選での旅費を得る方法 - hadrori.jp
- Competitive Programming Advent Calendar 2015
コンテスト運営
- ★TTPC2015の運営 | かみぺーぱーめも
- Competitive Programming Advent Calendar 2015
- ICPCの裏側をちょこっとだけ - 歩くような速さで
- Competitive Programming Advent Calendar 2015
- ICPC
- AtCoderでのコンテスト主催者向けのツール紹介 (Competitive Programming (その2) Advent Calendar 2015 Day 17) - itohjamのブログ
- Competitive Programming Advent Calendar 2015
マラソンマッチ
- ★マラソンマッチで最初の12時間にすべきこと - hama_duのブログ
- Competitive Programming Advent Calendar 2015
- マラソンマッチ
- ★Topcoderマラソンマッチの探索問題で重要なこと - Qiita
- Competitive Programming Advent Calendar 2015
- 探索空間の形を意識する。
アルゴリズム
- ★色々なアルゴリズムで「殴る」 - あったこといろいろ
- Competitive Programming Advent Calendar 2016
- 強連結成分分解
- 二重辺連結成分分解
- ★Two types of BST // Speaker Deck
- Competitive Programming Advent Calendar 2016
- 内部ノードを持つ平衡二分探索木
- OCamlのsetの実装の軽い紹介 -
- Competitive Programming Advent Calendar 2016
- AVL木
- ★ちょっと重いSegTree - よすぽの日記
- Competitive Programming Advent Calendar 2015
- Convex Hull Trick(削除付き)をO(log3 N)で解く。
- 高速なビット行列乗算
- Competitive Programming Advent Calendar 2015
- 競プロとLP双対まわりの話で最近知ったこと - とこはるのまとめ
- Competitive Programming Advent Calendar 2016
- 線形計画問題(Linear Programming/LP)
- LP双対問題
- Maximum Closure Problem / Project Selection Problem
- ★色々なダイクストラ高速化
- 枝刈り
- RadixHeap
- SPFAの紹介 - hogloidのブログ
- shortest path faster algorithm
- 単一始点最短経路アルゴリズム
- 負辺があっても動作する。
- Leftist Heap & Skew Heap - blog
- priority queue (優先度付きキュー)
- 誤差と戦う小手先のテク - みさわめも
- Competitive Programming Advent Calendar 2015
- Dominator Tree - sigma425のブログ
- Competitive Programming Advent Calendar 2015
- Dominator Tree
- 競技プログラマー向け将棋AI開発入門 - nodchipのTopCoder日記 - TopCoder部
- Competitive Programming Advent Calendar 2015
- ゲームAI・コンピュータ将棋特有のアルゴリズムのメモが充実している
- Black box linear algebra - yukicoder
- Competitive Programming Advent Calendar 2015
- 数え上げ問題の行列を用いた解法。
- 行列累乗の高速化
- 行列式をO(n2 + nT(n))で求める。T(n)はベクトルと正方行列Aの乗算にかかる計算量。
文字列検索
- 競プロで使いたい✨文字列アルゴリズム達🎀💕 - Qiita
- Competitive Programming Advent Calendar 2016
- 部分文字列検索
- KMP法, BM法, ラビンカープ法, Suffix Array, Burrows Wheeler Transform
- ★Burrows Wheeler Transform と Suffix Array - naoyaのはてなダイアリー
- Burrows Wheeler Transform (Block Sorting)の解説
- Suffix Array 構築ライブラリ libdivsufsort の紹介
UnionFind
- ★何も決まってないです。(path上の最大重みを求めるの一般的なテク) - sigma425のブログ
- Competitive Programming Advent Calendar 2015
- Union Find の応用
- Union Findで集合の要素をたどる -
- Competitive Programming Advent Calendar 2015
- 集合の要素を取得できるUnionFind
二分探索
- ★二分探索で失敗しないために - agwの日記 - TopCoder部
- Competitive Programming Advent Calendar 2015
- 二分探索について分かりやすくまとまっている。
- 二分探索と三分探索 - komiyamの日記
動的計画法
- 動的計画法が苦手な人が、動的計画法が超苦手な人へアドバイスしてみる - じじいのプログラミング
- Competitive Programming Advent Calendar Div2013
- (ΦωΦ)<動的計画法対策講座 目次
- Competitive Programming Advent Calendar 2015
- 累積和を使う動的計画法 - じじいのプログラミング
- Competitive Programming Advent Calendar 2015
- 動的計画法の高速化のために累積和を使用する解説
- ダイクストラ法が分からなかった君のために - kuuso1のブログ
- Competitive Programming Advent Calendar 2015
- 配るDP
- ダイクストラ法
作問
- ★作問の失敗 判例集 - tozangezan's diary
- Competitive Programming Advent Calendar 2015
- 作問
- 初心者が作問して思ったこととか - うにゅーん、って感じだ
- Competitive Programming Advent Calendar 2016
- 作問
- IOIへの出題について - あなたは嘘つきですかと聞かれたら「YES」と答えるブログ
- Competitive Programming Advent Calendar 2016
- 作問
- JAG 夏合宿 2014 Day4 E - AI 解説+裏話 | mitaki28.info blog
- Competitive Programming Advent Calendar 2015
- 作問
- JavaChallenge2015の裏話 - ENIXERの日記 - TopCoder部
- Competitive Programming Advent Calendar 2015
- 作問
- topcoder ボツ問供養 - ir5は引退した - TopCoder部
- Competitive Programming Advent Calendar 2015
- 作問
言語解説
- Haskell で始める AtCoder Beginner Contest - na_o_ysのブログ
- Competitive Programming Advent Calendar 2015
- 競技プログラマのためのC++ - あなたは嘘つきですかと聞かれたら「YES」と答えるブログ
- Competitive Programming Advent Calendar 2015
- ★ABC を bash で解いた話 - yuizumi’s diary
- Competitive Programming Advent Calendar 2015
- pythonで競技プログラミングをする際に便利な関数とか5選 - n-knuu's logs
- Competitive Programming Advent Calendar 2015
- Python使いなら読んでおいたほうがいいかも
- pythonで競技プログラミングをする際に便利なほかの関数とか5選 - roiti46's blog
- Competitive Programming Advent Calendar 2015
- Python使いなら読んでおいたほうがいいかも
- ScalaでAOJ - Qiita
- Competitive Programming Advent Calendar 2015
- 競技プログラミングにおいて、C/C++/C#/VB/F#/NemerleでGMPを使う - Qiita
- Competitive Programming Advent Calendar 2015
- GNU Multi-Precision Library
振り返り記事
- ★競技プログラミングを始めての10年間を振り返る(前編) - skyaozoraの日記 - TopCoder部
- Competitive Programming Advent Calendar 2016
- 時代を感じる
- 競技プログラミングを始めて1年間でやったこと - ゆらのふなびと
- Competitive Programming Advent Calendar 2016
- ★プログラミングが苦手な自分が競技プログラミングを始めた話 - ctyl's problem solving
- Competitive Programming Advent Calendar 2015
- 「自分の競技プログラミングに対する取り組み方」の部分、特に「6. 自分を雑魚だと思わない」が参考になる。
- 競技プログラマーのサイコロは千回続けて六が出る - CKomakiの日記 - TopCoder部
- Competitive Programming Advent Calendar 2016
- AdventCalendar2016_CompetitiveProgramming - 研究者を諦めた荒木伸夫のサイト
- Competitive Programming Advent Calendar 2016
- 競プロ始めて思ったこととか 【Competitive Programming Advent Calendar 2015 15日目】 - S_Shimotori’s diary
- Competitive Programming Advent Calendar 2015
- 競技プログラミングを始めて変わったこと - 水面下の夢
- Competitive Programming Advent Calendar 2015
入門記事
- 社会人になってから始めるTopCoder - 糸且之入E∃言己足亦土也
- Competitive Programming Advent Calendar 2011
- 社会人10年目から始める競技プログラミングのすすめ - kuuso1のブログ
- Competitive Programming Advent Calendar 2014
- ★初心者向けのABCの問題傾向とその対策 - ヘクトのメモ
- Competitive Programming Advent Calendar 2015
- ABCになにが出題されるのか。
- ★競技プログラマー入門者用単語集 - hadrori.jp
- Competitive Programming Advent Calendar 2015
- 「趣味」など
- AtCoderのプログラミング入門教材 AtCoder Programming Guide for Beginners の宣伝 - ブログのとさか
- Competitive Programming Advent Calendar 2016
Topcoder
- Topcoder Div1 Hard を解いてみよう
- Competitive Programming Advent Calendar 2016
- Topcoder Div1 Hard
企業と競プロ
- ★競技プログラマは競プロのコンテストを開いてる会社に就職しろ! - chokudaiのブログ
- Competitive Programming Advent Calendar 2016
- 就職
- Web系ソフトウェアエンジニア学習コースへの競技プログラミングの導入事例 - Qiita
- Competitive Programming Advent Calendar 2015
- 教育
AtCoder
- ★AtCoderの昔の問題を難易度推定する - TopCoderの学習のお時間 - TopCoder部
- Competitive Programming Advent Calendar 2016
- AtCoder
- 難易度推定
- AtCoder上で過去に提出したソースコードをローカルに保存する - あったこといろいろ
- Competitive Programming Advent Calendar 2016
- AtCoder
- util
ゲームAI
- ゲームAIコンテストのすすめ - iwashi31’s diary
- Competitive Programming Advent Calendar 2015
- ゲームAI
オンラインジャッジ
- ★AWS S3+SQS+Lambda で格安でセキュアなジャッジシステムを作ろうとして一ヶ月溶かした - Qiita
- paizaのオンラインジャッジを支えるDockerとその周辺
- Imo Judge を支える技術 - いもす研 (imos laboratory)
- 主にセキュリティでの制御について
- The Moe Contest Environment
- IOIのコンテスト環境
コードゴルフ
- AtCoderのショートコード数で1位になってみた(コードゴルフ) - 唯物是真 @Scaled_Wurm
- Competitive Programming Advent Calendar 2015
- コードゴルフ
- 短縮王「割り算と足し算」解説(C言語部門) - notブログ
- Competitive Programming Advent Calendar 2015
- 作問
- コードゴルフ
グルーピングできないもの
- ★JOI予選の提出について - goodbaton’s diary
- Competitive Programming Advent Calendar 2015
- 提出ミスを防ぐ方法
- いろんな人のテンプレートを観察 - memo
- Competitive Programming Advent Calendar 2015
- tools
- competitiveprogramming.infoについて - hotpepsiの練習帳 - TopCoder部
- Competitive Programming Advent Calendar 2015
- competitiveprogramming.infoの紹介
- ★すごいサブミット 2015-12-01 - TopCoderの学習のお時間 - TopCoder部
- Competitive Programming Advent Calendar 2015
- 特徴的なサブミットを紹介している
※記事執筆者の皆様へリスペクトを