2015-12-01から1ヶ月間の記事一覧

繰り返し二乗法(2題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本(通称:蟻本)の章末で紹介されている練習問題をひたすらといている。繰り返し二乗法。べき乗の高速な計算アルゴリズムなんだ…

素数(4題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本(通称:蟻本)の章末で紹介されている練習問題をひたすらといている。素数の問題。エラトステネスのふるい。有名だし、これと…

ユークリッドの互除法(2題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本(通称:蟻本)の章末で紹介されている練習問題をひたすらといている。今回はユークリッドの互除法。最近はユークリッドの互除…

最小全域木:クラスカル法(4題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本の章末で紹介されている問題をひたすら解いている。 今回はグラフの最小全域木を求める問題。 最小全域木とは、(連結なグラフ…

【Python】組み込み関数zip()でディクショナリを初期化する

zip()はディクショナリの初期化に向いている。 zip()の基本的な使い方 公式ドキュメント2. 組み込み関数 — Python 3.4.3 ドキュメントより zip(*iterables) それぞれのイテラブルから要素を集めたイテレータを作ります。この関数はタプルのイテレータを返し…

最短経路問題:ダイクストラ法、ベルマンフォード法、ワーシャルフロイド法(6題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本(通称:蟻本)の章末で紹介されている練習問題をひたすら解いている。今回は最短経路問題。はじめに最短経路問題を解くアルゴ…

Union-Find木(3題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本(蟻本)の章末で紹介されている練習問題をひたすら解いている。 今回は、Union-Find木を使う問題。 Union-Find木に関するいち…

プライオリティキュー(2題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本の章末で紹介されている練習問題をひたすら解いている。 今回はプライオリティキューを使う問題。 POJ2010: Financial Aid 2010…

動的計画法:少し考察を要する問題(5題)

プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~ この本(通称「蟻本」)の章末で紹介されている練習問題を淡々と解いている。 今回は動的計画法の第三弾。難しかった。しかも解いてか…

動的計画法:漸化式を工夫して高速化(3題)

漸化式を工夫して高速化をはからなければならない動的計画法の問題。 だいたい最初に思いつく漸化式が、間違っているわけではないけれど効率が悪く、提出するとTime Limit Exceededになる。 そこで、漸化式を改善して時間内に解けるようにしましょうね、とい…